Uses of Interface
ai.timefold.solver.core.api.function.TriFunction
Packages that use TriFunction
Package
Description
The
ConstraintStream API for bi-tuples.The
ConstraintStream API for four matched facts.The
ConstraintStream API for tri-tuples.-
Uses of TriFunction in ai.timefold.solver.core.api.score.stream
Methods in ai.timefold.solver.core.api.score.stream with parameters of type TriFunctionModifier and TypeMethodDescriptionstatic <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, BigDecimal> ConstraintCollectors.averageBigDecimal(@NonNull TriFunction<A, B, C, BigDecimal> groupValueMapping) As defined byConstraintCollectors.averageBigDecimal(Function).static <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, BigDecimal> ConstraintCollectors.averageBigInteger(@NonNull TriFunction<A, B, C, BigInteger> groupValueMapping) As defined byConstraintCollectors.averageBigInteger(Function).static <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, Duration> ConstraintCollectors.averageDuration(@NonNull TriFunction<A, B, C, Duration> groupValueMapping) As defined byConstraintCollectors.average(ToIntFunction).static <A,B, Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResult1_, SubResult2_, SubResult3_>
@NonNull BiConstraintCollector<A,B, ?, Result_> ConstraintCollectors.compose(@NonNull BiConstraintCollector<A, B, SubResultContainer1_, SubResult1_> subCollector1, @NonNull BiConstraintCollector<A, B, SubResultContainer2_, SubResult2_> subCollector2, @NonNull BiConstraintCollector<A, B, SubResultContainer3_, SubResult3_> subCollector3, @NonNull TriFunction<SubResult1_, SubResult2_, SubResult3_, Result_> composeFunction) static <A,B, C, D, Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResult1_, SubResult2_, SubResult3_>
@NonNull QuadConstraintCollector<A,B, C, D, ?, Result_> ConstraintCollectors.compose(@NonNull QuadConstraintCollector<A, B, C, D, SubResultContainer1_, SubResult1_> subCollector1, @NonNull QuadConstraintCollector<A, B, C, D, SubResultContainer2_, SubResult2_> subCollector2, @NonNull QuadConstraintCollector<A, B, C, D, SubResultContainer3_, SubResult3_> subCollector3, @NonNull TriFunction<SubResult1_, SubResult2_, SubResult3_, Result_> composeFunction) static <A,B, C, Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResult1_, SubResult2_, SubResult3_>
@NonNull TriConstraintCollector<A,B, C, ?, Result_> ConstraintCollectors.compose(@NonNull TriConstraintCollector<A, B, C, SubResultContainer1_, SubResult1_> subCollector1, @NonNull TriConstraintCollector<A, B, C, SubResultContainer2_, SubResult2_> subCollector2, @NonNull TriConstraintCollector<A, B, C, SubResultContainer3_, SubResult3_> subCollector3, @NonNull TriFunction<SubResult1_, SubResult2_, SubResult3_, Result_> composeFunction) static <A,Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResult1_, SubResult2_, SubResult3_>
@NonNull UniConstraintCollector<A,?, Result_> ConstraintCollectors.compose(@NonNull UniConstraintCollector<A, SubResultContainer1_, SubResult1_> subCollector1, @NonNull UniConstraintCollector<A, SubResultContainer2_, SubResult2_> subCollector2, @NonNull UniConstraintCollector<A, SubResultContainer3_, SubResult3_> subCollector3, @NonNull 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> @NonNull TriConstraintCollector<A, B, C, ?, Integer> ConstraintCollectors.countDistinct(@NonNull TriFunction<A, B, C, ?> groupValueMapping) As defined byConstraintCollectors.countDistinct(Function).static <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, Long> ConstraintCollectors.countDistinctLong(@NonNull TriFunction<A, B, C, ?> groupValueMapping) As defined byConstraintCollectors.countDistinct(Function).static <A,B, C, D, Property_>
@NonNull 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_>>
@NonNull 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_>>
@NonNull 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_>>
@NonNull 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_>>
@NonNull 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, Balanced_>
@NonNull TriConstraintCollector<A,B, C, ?, LoadBalance<Balanced_>> ConstraintCollectors.loadBalance(@NonNull TriFunction<A, B, C, Balanced_> balancedItemFunction) As defined byConstraintCollectors.loadBalance(TriFunction, ToLongTriFunction, ToLongTriFunction), where the current load for each balanced item is set to one and the starting load for each balanced item is set to zero.static <A,B, C, Balanced_>
@NonNull TriConstraintCollector<A,B, C, ?, LoadBalance<Balanced_>> ConstraintCollectors.loadBalance(@NonNull TriFunction<A, B, C, Balanced_> balancedItemFunction, @NonNull ToLongTriFunction<A, B, C> loadFunction) As defined byConstraintCollectors.loadBalance(TriFunction, ToLongTriFunction, ToLongTriFunction), where the starting load for each balanced item is set to zero.static <A,B, C, Balanced_>
@NonNull TriConstraintCollector<A,B, C, ?, LoadBalance<Balanced_>> ConstraintCollectors.loadBalance(@NonNull TriFunction<A, B, C, Balanced_> balancedItemFunction, @NonNull ToLongTriFunction<A, B, C> loadFunction, @NonNull ToLongTriFunction<A, B, C> initialLoadFunction) static <A,B, C, Mapped extends Comparable<? super Mapped>>
@NonNull TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.max(@NonNull TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.max(Function).static <A,B, C, Mapped, Comparable_ extends Comparable<? super Comparable_>>
@NonNull TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.max(@NonNull TriFunction<A, B, C, Mapped> groupValueMapping, @NonNull Function<Mapped, Comparable_> comparableFunction) As defined byConstraintCollectors.max(Function, Function), only with a customComparator.static <A,B, C, Mapped>
TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.max(TriFunction<A, B, C, Mapped> groupValueMapping, Comparator<? super Mapped> comparator) Deprecated, for removal: This API element is subject to removal in a future version.static <A,B, C, Mapped extends Comparable<? super Mapped>>
@NonNull TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.min(@NonNull TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.min(Function).static <A,B, C, Mapped, Comparable_ extends Comparable<? super Comparable_>>
@NonNull TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.min(@NonNull TriFunction<A, B, C, Mapped> groupValueMapping, @NonNull Function<Mapped, Comparable_> comparableFunction) As defined byConstraintCollectors.min(Function, Function).static <A,B, C, Mapped>
TriConstraintCollector<A,B, C, ?, Mapped> ConstraintCollectors.min(TriFunction<A, B, C, Mapped> groupValueMapping, Comparator<? super Mapped> comparator) Deprecated, for removal: This API element is subject to removal in a future version.Deprecated in favor ofConstraintCollectors.min(TriFunction, Function), as this method can lead to unavoidable score corruptions.static <A,B, C, D, Property_ extends Comparable<Property_>>
@NonNull 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>
@NonNull TriConstraintCollector<A,B, C, ?, Result> ConstraintCollectors.sum(@NonNull TriFunction<? super A, ? super B, ? super C, Result> groupValueMapping, @NonNull Result zero, @NonNull BinaryOperator<Result> adder, @NonNull BinaryOperator<Result> subtractor) As defined byConstraintCollectors.sum(ToIntFunction).static <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, BigDecimal> ConstraintCollectors.sumBigDecimal(@NonNull TriFunction<? super A, ? super B, ? super C, BigDecimal> groupValueMapping) As defined byConstraintCollectors.sum(ToIntFunction).static <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, BigInteger> ConstraintCollectors.sumBigInteger(@NonNull TriFunction<? super A, ? super B, ? super C, BigInteger> groupValueMapping) As defined byConstraintCollectors.sum(ToIntFunction).static <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, Duration> ConstraintCollectors.sumDuration(@NonNull TriFunction<? super A, ? super B, ? super C, Duration> groupValueMapping) As defined byConstraintCollectors.sum(ToIntFunction).static <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, Period> ConstraintCollectors.sumPeriod(@NonNull 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) static <A,B, C, IntervalType_, PointType_ extends Comparable<PointType_>, DifferenceType_ extends Comparable<DifferenceType_>>
@NonNull TriConstraintCollector<A,B, C, ?, ConnectedRangeChain<IntervalType_, PointType_, DifferenceType_>> ConstraintCollectors.toConnectedRanges(@NonNull TriFunction<A, B, C, IntervalType_> intervalMap, @NonNull Function<IntervalType_, PointType_> startInclusiveMap, @NonNull Function<IntervalType_, PointType_> endExclusiveMap, @NonNull BiFunction<PointType_, PointType_, DifferenceType_> differenceFunction) static <A,B, C, IntervalType_>
@NonNull TriConstraintCollector<A,B, C, ?, ConnectedRangeChain<IntervalType_, Long, Long>> ConstraintCollectors.toConnectedRanges(@NonNull TriFunction<A, B, C, IntervalType_> intervalMap, @NonNull ToLongFunction<IntervalType_> startInclusiveMap, @NonNull ToLongFunction<IntervalType_> endExclusiveMap) static <A,B, C, IntervalType_, PointType_ extends Temporal & Comparable<PointType_>>
@NonNull TriConstraintCollector<A,B, C, ?, ConnectedRangeChain<IntervalType_, PointType_, Duration>> ConstraintCollectors.toConnectedTemporalRanges(@NonNull TriFunction<A, B, C, IntervalType_> intervalMap, @NonNull Function<IntervalType_, PointType_> startInclusiveMap, @NonNull Function<IntervalType_, PointType_> endExclusiveMap) static <A,B, C, Result_>
@NonNull TriConstraintCollector<A,B, C, ?, SequenceChain<Result_, Integer>> ConstraintCollectors.toConsecutiveSequences(@NonNull TriFunction<A, B, C, Result_> resultMap, @NonNull ToIntFunction<Result_> indexMap) As defined byConstraintCollectors.toConsecutiveSequences(ToIntFunction).static <A,B, C, Mapped>
@NonNull TriConstraintCollector<A,B, C, ?, List<Mapped>> ConstraintCollectors.toList(@NonNull TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.toList(Function).static <A,B, C, Key, Value>
@NonNull TriConstraintCollector<A,B, C, ?, Map<Key, Set<Value>>> ConstraintCollectors.toMap(@NonNull TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, @NonNull TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper) As defined byConstraintCollectors.toMap(Function, Function).static <A,B, C, Key, Value>
@NonNull TriConstraintCollector<A,B, C, ?, Map<Key, Value>> ConstraintCollectors.toMap(@NonNull TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, @NonNull TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper, @NonNull BinaryOperator<Value> mergeFunction) static <A,B, C, Key, Value, ValueSet extends Set<Value>>
@NonNull TriConstraintCollector<A,B, C, ?, Map<Key, ValueSet>> ConstraintCollectors.toMap(@NonNull TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, @NonNull TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper, @NonNull IntFunction<ValueSet> valueSetFunction) As defined byConstraintCollectors.toMap(Function, Function, IntFunction).static <A,B, C, Mapped>
@NonNull TriConstraintCollector<A,B, C, ?, Set<Mapped>> ConstraintCollectors.toSet(@NonNull TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.toSet(Function).static <A,B, C, Key extends Comparable<? super Key>, Value>
@NonNull TriConstraintCollector<A,B, C, ?, SortedMap<Key, Set<Value>>> ConstraintCollectors.toSortedMap(@NonNull TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, @NonNull 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>
@NonNull TriConstraintCollector<A,B, C, ?, SortedMap<Key, Value>> ConstraintCollectors.toSortedMap(@NonNull TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, @NonNull TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper, @NonNull BinaryOperator<Value> mergeFunction) static <A,B, C, Key extends Comparable<? super Key>, Value, ValueSet extends Set<Value>>
@NonNull TriConstraintCollector<A,B, C, ?, SortedMap<Key, ValueSet>> ConstraintCollectors.toSortedMap(@NonNull TriFunction<? super A, ? super B, ? super C, ? extends Key> keyMapper, @NonNull TriFunction<? super A, ? super B, ? super C, ? extends Value> valueMapper, @NonNull IntFunction<ValueSet> valueSetFunction) static <A,B, C, Mapped extends Comparable<? super Mapped>>
@NonNull TriConstraintCollector<A,B, C, ?, SortedSet<Mapped>> ConstraintCollectors.toSortedSet(@NonNull TriFunction<A, B, C, Mapped> groupValueMapping) As defined byConstraintCollectors.toSortedSet(Function).static <A,B, C, Mapped>
@NonNull TriConstraintCollector<A,B, C, ?, SortedSet<Mapped>> ConstraintCollectors.toSortedSet(@NonNull TriFunction<A, B, C, Mapped> groupValueMapping, @NonNull Comparator<? super Mapped> comparator) As defined byConstraintCollectors.toSortedSet(Function, Comparator). -
Uses of TriFunction in ai.timefold.solver.core.api.score.stream.bi
Methods in ai.timefold.solver.core.api.score.stream.bi that return TriFunctionModifier and TypeMethodDescription@NonNull TriFunction<ResultContainer_,A, B, Runnable> BiConstraintCollector.accumulator()A lambda that extracts data from the matched facts, accumulates it in the result container and returns an undo operation for that accumulation.Methods in ai.timefold.solver.core.api.score.stream.bi with parameters of type TriFunctionModifier and TypeMethodDescription<ConstraintJustification_ extends ConstraintJustification>
@NonNull BiConstraintBuilder<A,B, Score_> BiConstraintBuilder.justifyWith(@NonNull TriFunction<A, B, Score_, ConstraintJustification_> justificationMapping) Sets a custom function to apply on a constraint match to justify it. -
Uses of TriFunction in ai.timefold.solver.core.api.score.stream.quad
Methods in ai.timefold.solver.core.api.score.stream.quad with parameters of type TriFunctionModifier and TypeMethodDescription@NonNull QuadConstraintStream<A,B, C, D> QuadConstraintStream.concat(@NonNull TriConstraintStream<A, B, C> otherStream, @NonNull TriFunction<A, B, C, D> paddingFunction) Returns a newQuadConstraintStreamcontaining all the tuples of both thisQuadConstraintStreamand the providedTriConstraintStream. -
Uses of TriFunction in ai.timefold.solver.core.api.score.stream.tri
Methods in ai.timefold.solver.core.api.score.stream.tri with parameters of type TriFunctionModifier and TypeMethodDescription<D> @NonNull QuadConstraintStream<A,B, C, D> TriConstraintStream.concat(@NonNull QuadConstraintStream<A, B, C, D> otherStream, @NonNull TriFunction<A, B, C, D> paddingFunction) Returns a newQuadConstraintStreamcontaining all the tuples of both thisTriConstraintStreamand the providedQuadConstraintStream.<ResultD_> @NonNull QuadConstraintStream<A,B, C, ResultD_> TriConstraintStream.expand(@NonNull TriFunction<A, B, C, ResultD_> mapping) Adds a fact to the end of the tuple, increasing the cardinality of the stream.<GroupKey_>
@NonNull UniConstraintStream<GroupKey_>TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKey_> groupKeyMapping) Convert theTriConstraintStreamto aUniConstraintStream, containing the set of tuples resulting from applying the group key mapping function on all tuples of the original stream.<GroupKey_,ResultContainer_, Result_>
@NonNull BiConstraintStream<GroupKey_,Result_> TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKey_> groupKeyMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) Convert theTriConstraintStreamto aBiConstraintStream, consisting of unique tuples.<GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
@NonNull TriConstraintStream<GroupKey_,ResultB_, ResultC_> TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKey_> groupKeyMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, @NonNull TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC) Convert theTriConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.<GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
@NonNull QuadConstraintStream<GroupKey_,ResultB_, ResultC_, ResultD_> TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKey_> groupKeyMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, @NonNull TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC, @NonNull TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) Convert theTriConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts.<GroupKeyA_,GroupKeyB_>
@NonNull BiConstraintStream<GroupKeyA_,GroupKeyB_> TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping) Convert theTriConstraintStreamto aBiConstraintStream, consisting of unique tuples.<GroupKeyA_,GroupKeyB_, GroupKeyC_>
@NonNull TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping) Convert theTriConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.<GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_>
@NonNull QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_> TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping, @NonNull TriFunction<A, B, C, GroupKeyD_> groupKeyDMapping) Convert theTriConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts.<GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultContainerD_, ResultD_>
@NonNull QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultD_> TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) Combines the semantics ofTriConstraintStream.groupBy(TriFunction, TriFunction)andTriConstraintStream.groupBy(TriConstraintCollector).<GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
@NonNull TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) Combines the semantics ofTriConstraintStream.groupBy(TriFunction, TriFunction)andTriConstraintStream.groupBy(TriConstraintCollector).<GroupKeyA_,GroupKeyB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
@NonNull QuadConstraintStream<GroupKeyA_,GroupKeyB_, ResultC_, ResultD_> TriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC, @NonNull TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) Combines the semantics ofTriConstraintStream.groupBy(TriFunction, TriFunction)andTriConstraintStream.groupBy(TriConstraintCollector).<Score_ extends Score<Score_>>
@NonNull TriConstraintBuilder<A,B, C, Score_> TriConstraintStream.impactBigDecimal(@NonNull Score_ constraintWeight, @NonNull TriFunction<A, B, C, BigDecimal> matchWeigher) As defined byTriConstraintStream.impact(Score, ToIntTriFunction), with an impact of typeBigDecimal.default ConstraintTriConstraintStream.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.default ConstraintTriConstraintStream.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.TriConstraintBuilder<A,B, C, ?> TriConstraintStream.impactConfigurableBigDecimal(TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default ConstraintTriConstraintStream.impactConfigurableBigDecimal(String constraintName, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default ConstraintTriConstraintStream.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.@NonNull TriConstraintBuilder<A,B, C, Score_> TriConstraintBuilder.indictWith(@NonNull 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_> @NonNull UniConstraintStream<ResultA_>TriConstraintStream.map(@NonNull TriFunction<A, B, C, ResultA_> mapping) As defined byUniConstraintStream.map(Function).<ResultA_,ResultB_>
@NonNull BiConstraintStream<ResultA_,ResultB_> TriConstraintStream.map(@NonNull TriFunction<A, B, C, ResultA_> mappingA, @NonNull TriFunction<A, B, C, ResultB_> mappingB) As defined byTriConstraintStream.map(TriFunction), only resulting inBiConstraintStream.<ResultA_,ResultB_, ResultC_>
@NonNull TriConstraintStream<ResultA_,ResultB_, ResultC_> TriConstraintStream.map(@NonNull TriFunction<A, B, C, ResultA_> mappingA, @NonNull TriFunction<A, B, C, ResultB_> mappingB, @NonNull TriFunction<A, B, C, ResultC_> mappingC) As defined byTriConstraintStream.map(TriFunction), only resulting inTriConstraintStream.<ResultA_,ResultB_, ResultC_, ResultD_>
@NonNull QuadConstraintStream<ResultA_,ResultB_, ResultC_, ResultD_> TriConstraintStream.map(@NonNull TriFunction<A, B, C, ResultA_> mappingA, @NonNull TriFunction<A, B, C, ResultB_> mappingB, @NonNull TriFunction<A, B, C, ResultC_> mappingC, @NonNull TriFunction<A, B, C, ResultD_> mappingD) As defined byTriConstraintStream.map(TriFunction), only resulting inQuadConstraintStream.<Score_ extends Score<Score_>>
@NonNull TriConstraintBuilder<A,B, C, Score_> TriConstraintStream.penalizeBigDecimal(@NonNull Score_ constraintWeight, @NonNull TriFunction<A, B, C, BigDecimal> matchWeigher) As defined byTriConstraintStream.penalize(Score, ToIntTriFunction), with a penalty of typeBigDecimal.default ConstraintTriConstraintStream.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.default ConstraintTriConstraintStream.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.TriConstraintBuilder<A,B, C, ?> TriConstraintStream.penalizeConfigurableBigDecimal(TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default ConstraintTriConstraintStream.penalizeConfigurableBigDecimal(String constraintName, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default ConstraintTriConstraintStream.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.<Score_ extends Score<Score_>>
@NonNull TriConstraintBuilder<A,B, C, Score_> TriConstraintStream.rewardBigDecimal(@NonNull Score_ constraintWeight, @NonNull TriFunction<A, B, C, BigDecimal> matchWeigher) As defined byTriConstraintStream.reward(Score, ToIntTriFunction), with a penalty of typeBigDecimal.default ConstraintTriConstraintStream.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.default ConstraintTriConstraintStream.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.TriConstraintBuilder<A,B, C, ?> TriConstraintStream.rewardConfigurableBigDecimal(TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default ConstraintTriConstraintStream.rewardConfigurableBigDecimal(String constraintName, TriFunction<A, B, C, BigDecimal> matchWeigher) Deprecated, for removal: This API element is subject to removal in a future version.default ConstraintTriConstraintStream.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. -
Uses of TriFunction in ai.timefold.solver.core.impl.bavet.quad
Constructors in ai.timefold.solver.core.impl.bavet.quad with parameters of type TriFunctionModifierConstructorDescriptionConcatQuadTriNode(TriFunction<A, B, C, D> paddingFunction, TupleLifecycle<QuadTuple<A, B, C, D>> nextNodesTupleLifecycle, int inputStoreIndexLeftOutTupleList, int inputStoreIndexRightOutTupleList, int outputStoreSize) ConcatTriQuadNode(TriFunction<A, B, C, D> paddingFunction, TupleLifecycle<QuadTuple<A, B, C, D>> nextNodesTupleLifecycle, int inputStoreIndexLeftOutTupleList, int inputStoreIndexRightOutTupleList, int outputStoreSize) -
Uses of TriFunction in ai.timefold.solver.core.impl.bavet.quad.joiner
Methods in ai.timefold.solver.core.impl.bavet.quad.joiner that return TriFunctionModifier and TypeMethodDescriptionTriFunction<A,B, C, Object> DefaultQuadJoiner.getLeftMapping(int index) Constructors in ai.timefold.solver.core.impl.bavet.quad.joiner with parameters of type TriFunctionModifierConstructorDescriptionDefaultQuadJoiner(TriFunction<A, B, C, Property_> leftMapping, JoinerType joinerType, Function<D, Property_> rightMapping) -
Uses of TriFunction in ai.timefold.solver.core.impl.bavet.tri
Constructors in ai.timefold.solver.core.impl.bavet.tri with parameters of type TriFunctionModifierConstructorDescriptionGroup1Mapping0CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMapping, int groupStoreIndex, TupleLifecycle<UniTuple<A>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group1Mapping1CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMapping, int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainer_, B> collector, TupleLifecycle<BiTuple<A, B>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group1Mapping2CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMapping, int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainerB_, B> collectorB, TriConstraintCollector<OldA, OldB, OldC, ResultContainerC_, C> collectorC, TupleLifecycle<TriTuple<A, B, C>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group1Mapping3CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMapping, int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainerB_, B> collectorB, TriConstraintCollector<OldA, OldB, OldC, ResultContainerC_, C> collectorC, TriConstraintCollector<OldA, OldB, OldC, ResultContainerD_, D> collectorD, TupleLifecycle<QuadTuple<A, B, C, D>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group2Mapping0CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMappingA, TriFunction<OldA, OldB, OldC, B> groupKeyMappingB, int groupStoreIndex, TupleLifecycle<BiTuple<A, B>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group2Mapping1CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMappingA, TriFunction<OldA, OldB, OldC, B> groupKeyMappingB, int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainer_, C> collector, TupleLifecycle<TriTuple<A, B, C>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group2Mapping2CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMappingA, TriFunction<OldA, OldB, OldC, B> groupKeyMappingB, int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainerC_, C> collectorC, TriConstraintCollector<OldA, OldB, OldC, ResultContainerD_, D> collectorD, TupleLifecycle<QuadTuple<A, B, C, D>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group3Mapping0CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMappingA, TriFunction<OldA, OldB, OldC, B> groupKeyMappingB, TriFunction<OldA, OldB, OldC, C> groupKeyMappingC, int groupStoreIndex, TupleLifecycle<TriTuple<A, B, C>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group3Mapping1CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMappingA, TriFunction<OldA, OldB, OldC, B> groupKeyMappingB, TriFunction<OldA, OldB, OldC, C> groupKeyMappingC, int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainer_, D> collector, TupleLifecycle<QuadTuple<A, B, C, D>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group4Mapping0CollectorTriNode(TriFunction<OldA, OldB, OldC, A> groupKeyMappingA, TriFunction<OldA, OldB, OldC, B> groupKeyMappingB, TriFunction<OldA, OldB, OldC, C> groupKeyMappingC, TriFunction<OldA, OldB, OldC, D> groupKeyMappingD, int groupStoreIndex, TupleLifecycle<QuadTuple<A, B, C, D>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) MapTriToBiNode(int mapStoreIndex, TriFunction<A, B, C, NewA> mappingFunctionA, TriFunction<A, B, C, NewB> mappingFunctionB, TupleLifecycle<BiTuple<NewA, NewB>> nextNodesTupleLifecycle, int outputStoreSize) MapTriToQuadNode(int mapStoreIndex, TriFunction<A, B, C, NewA> mappingFunctionA, TriFunction<A, B, C, NewB> mappingFunctionB, TriFunction<A, B, C, NewC> mappingFunctionC, TriFunction<A, B, C, NewD> mappingFunctionD, TupleLifecycle<QuadTuple<NewA, NewB, NewC, NewD>> nextNodesTupleLifecycle, int outputStoreSize) MapTriToTriNode(int mapStoreIndex, TriFunction<A, B, C, NewA> mappingFunctionA, TriFunction<A, B, C, NewB> mappingFunctionB, TriFunction<A, B, C, NewC> mappingFunctionC, TupleLifecycle<TriTuple<NewA, NewB, NewC>> nextNodesTupleLifecycle, int outputStoreSize) MapTriToUniNode(int mapStoreIndex, TriFunction<A, B, C, NewA> mappingFunction, TupleLifecycle<UniTuple<NewA>> nextNodesTupleLifecycle, int outputStoreSize) -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.bavet.bi
Methods in ai.timefold.solver.core.impl.score.stream.bavet.bi that return TriFunctionModifier and TypeMethodDescriptionprotected final TriFunction<A,B, Score<?>, DefaultConstraintJustification> BavetAbstractBiConstraintStream.getDefaultJustificationMapping() -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.bavet.quad
Methods in ai.timefold.solver.core.impl.score.stream.bavet.quad with parameters of type TriFunctionModifier and TypeMethodDescription@NonNull QuadConstraintStream<A,B, C, D> BavetAbstractQuadConstraintStream.concat(@NonNull TriConstraintStream<A, B, C> otherStream, @NonNull TriFunction<A, B, C, D> paddingFunction) Constructors in ai.timefold.solver.core.impl.score.stream.bavet.quad with parameters of type TriFunctionModifierConstructorDescriptionBavetTriConcatQuadConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetForeBridgeQuadConstraintStream<Solution_, A, B, C, D> leftParent, BavetForeBridgeTriConstraintStream<Solution_, A, B, C> rightParent, TriFunction<A, B, C, D> paddingFunctionD) BavetTriConcatQuadConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetForeBridgeTriConstraintStream<Solution_, A, B, C> leftParent, BavetForeBridgeQuadConstraintStream<Solution_, A, B, C, D> rightParent, TriFunction<A, B, C, D> paddingFunctionD) -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.bavet.tri
Methods in ai.timefold.solver.core.impl.score.stream.bavet.tri that return TriFunctionModifier and TypeMethodDescriptionprotected final TriFunction<A,B, C, Collection<?>> BavetAbstractTriConstraintStream.getDefaultIndictedObjectsMapping()Methods in ai.timefold.solver.core.impl.score.stream.bavet.tri with parameters of type TriFunctionModifier and TypeMethodDescription<D> @NonNull QuadConstraintStream<A,B, C, D> BavetAbstractTriConstraintStream.concat(@NonNull QuadConstraintStream<A, B, C, D> otherStream, @NonNull TriFunction<A, B, C, D> paddingFunction) <ResultD_> @NonNull QuadConstraintStream<A,B, C, ResultD_> BavetAbstractTriConstraintStream.expand(@NonNull TriFunction<A, B, C, ResultD_> mapping) <GroupKey_>
@NonNull UniConstraintStream<GroupKey_>BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKey_> groupKeyMapping) <GroupKey_,ResultContainer_, Result_>
@NonNull BiConstraintStream<GroupKey_,Result_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKey_> groupKeyMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
@NonNull TriConstraintStream<GroupKey_,ResultB_, ResultC_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKey_> groupKeyMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, @NonNull TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
@NonNull QuadConstraintStream<GroupKey_,ResultB_, ResultC_, ResultD_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKey_> groupKeyMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, @NonNull TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC, @NonNull TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) <GroupKeyA_,GroupKeyB_>
@NonNull BiConstraintStream<GroupKeyA_,GroupKeyB_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_>
@NonNull TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_>
@NonNull QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping, @NonNull TriFunction<A, B, C, GroupKeyD_> groupKeyDMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultContainerD_, ResultD_>
@NonNull QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultD_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) <GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
@NonNull TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) <GroupKeyA_,GroupKeyB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
@NonNull QuadConstraintStream<GroupKeyA_,GroupKeyB_, ResultC_, ResultD_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, @NonNull TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, @NonNull TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC, @NonNull TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) <Score_ extends Score<Score_>>
TriConstraintBuilder<A,B, C, Score_> BavetAbstractTriConstraintStream.innerImpact(Score_ constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher, ScoreImpactType scoreImpactType) <ResultA_> @NonNull UniConstraintStream<ResultA_>BavetAbstractTriConstraintStream.map(@NonNull TriFunction<A, B, C, ResultA_> mapping) <ResultA_,ResultB_>
@NonNull BiConstraintStream<ResultA_,ResultB_> BavetAbstractTriConstraintStream.map(@NonNull TriFunction<A, B, C, ResultA_> mappingA, @NonNull TriFunction<A, B, C, ResultB_> mappingB) <ResultA_,ResultB_, ResultC_>
@NonNull TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractTriConstraintStream.map(@NonNull TriFunction<A, B, C, ResultA_> mappingA, @NonNull TriFunction<A, B, C, ResultB_> mappingB, @NonNull TriFunction<A, B, C, ResultC_> mappingC) <ResultA_,ResultB_, ResultC_, ResultD_>
@NonNull QuadConstraintStream<ResultA_,ResultB_, ResultC_, ResultD_> BavetAbstractTriConstraintStream.map(@NonNull TriFunction<A, B, C, ResultA_> mappingA, @NonNull TriFunction<A, B, C, ResultB_> mappingB, @NonNull TriFunction<A, B, C, ResultC_> mappingC, @NonNull TriFunction<A, B, C, ResultD_> mappingD) -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.collector.bi
Methods in ai.timefold.solver.core.impl.score.stream.collector.bi with parameters of type TriFunctionModifier and TypeMethodDescriptionstatic <A,B, ResultHolder1_, ResultHolder2_, ResultHolder3_, Result1_, Result2_, Result3_, Result_>
BiConstraintCollector<A,B, ?, Result_> InnerBiConstraintCollectors.compose(BiConstraintCollector<A, B, ResultHolder1_, Result1_> first, BiConstraintCollector<A, B, ResultHolder2_, Result2_> second, BiConstraintCollector<A, B, ResultHolder3_, Result3_> third, TriFunction<Result1_, Result2_, Result3_, Result_> composeFunction) -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.collector.quad
Methods in ai.timefold.solver.core.impl.score.stream.collector.quad with parameters of type TriFunctionModifier and TypeMethodDescriptionstatic <A,B, C, D, ResultHolder1_, ResultHolder2_, ResultHolder3_, Result1_, Result2_, Result3_, Result_>
QuadConstraintCollector<A,B, C, D, ?, Result_> InnerQuadConstraintCollectors.compose(QuadConstraintCollector<A, B, C, D, ResultHolder1_, Result1_> first, QuadConstraintCollector<A, B, C, D, ResultHolder2_, Result2_> second, QuadConstraintCollector<A, B, C, D, ResultHolder3_, Result3_> third, TriFunction<Result1_, Result2_, Result3_, Result_> composeFunction) -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.collector.tri
Methods in ai.timefold.solver.core.impl.score.stream.collector.tri with parameters of type TriFunctionModifier and TypeMethodDescriptionstatic <A,B, C> TriConstraintCollector<A, B, C, ?, BigDecimal> InnerTriConstraintCollectors.averageBigDecimal(TriFunction<? super A, ? super B, ? super C, ? extends BigDecimal> mapper) static <A,B, C> TriConstraintCollector<A, B, C, ?, BigDecimal> InnerTriConstraintCollectors.averageBigInteger(TriFunction<? super A, ? super B, ? super C, ? extends BigInteger> mapper) static <A,B, C> TriConstraintCollector<A, B, C, ?, Duration> InnerTriConstraintCollectors.averageDuration(TriFunction<? super A, ? super B, ? super C, ? extends Duration> mapper) static <A,B, C, ResultHolder1_, ResultHolder2_, ResultHolder3_, Result1_, Result2_, Result3_, Result_>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.compose(TriConstraintCollector<A, B, C, ResultHolder1_, Result1_> first, TriConstraintCollector<A, B, C, ResultHolder2_, Result2_> second, TriConstraintCollector<A, B, C, ResultHolder3_, Result3_> third, TriFunction<Result1_, Result2_, Result3_, Result_> composeFunction) static <A,B, C, Mapped_>
TriConstraintCollector<A,B, C, ?, Integer> InnerTriConstraintCollectors.countDistinct(TriFunction<? super A, ? super B, ? super C, ? extends Mapped_> mapper) static <A,B, C, Mapped_>
TriConstraintCollector<A,B, C, ?, Long> InnerTriConstraintCollectors.countDistinctLong(TriFunction<? super A, ? super B, ? super C, ? extends Mapped_> mapper) static <A,B, C, Balanced_>
TriConstraintCollector<A,B, C, ?, LoadBalance<Balanced_>> InnerTriConstraintCollectors.loadBalance(TriFunction<A, B, C, Balanced_> balancedItemFunction, ToLongTriFunction<A, B, C> loadFunction, ToLongTriFunction<A, B, C> initialLoadFunction) static <A,B, C, Result_ extends Comparable<? super Result_>>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.max(TriFunction<? super A, ? super B, ? super C, ? extends Result_> mapper) static <A,B, C, Result_>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.max(TriFunction<? super A, ? super B, ? super C, ? extends Result_> mapper, Comparator<? super Result_> comparator) static <A,B, C, Result_, Property_ extends Comparable<? super Property_>>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.max(TriFunction<? super A, ? super B, ? super C, ? extends Result_> mapper, Function<? super Result_, ? extends Property_> propertyMapper) static <A,B, C, Result_ extends Comparable<? super Result_>>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.min(TriFunction<? super A, ? super B, ? super C, ? extends Result_> mapper) static <A,B, C, Result_>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.min(TriFunction<? super A, ? super B, ? super C, ? extends Result_> mapper, Comparator<? super Result_> comparator) static <A,B, C, Result_, Property_ extends Comparable<? super Property_>>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.min(TriFunction<? super A, ? super B, ? super C, ? extends Result_> mapper, Function<? super Result_, ? extends Property_> propertyMapper) static <A,B, C, Result_>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.sum(TriFunction<? super A, ? super B, ? super C, ? extends Result_> mapper, Result_ zero, BinaryOperator<Result_> adder, BinaryOperator<Result_> subtractor) static <A,B, C, Mapped_, Result_ extends Collection<Mapped_>>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.toCollection(TriFunction<? super A, ? super B, ? super C, ? extends Mapped_> mapper, IntFunction<Result_> collectionFunction) static <A,B, C, Interval_, Point_ extends Comparable<Point_>, Difference_ extends Comparable<Difference_>>
TriConstraintCollector<A,B, C, ?, ConnectedRangeChain<Interval_, Point_, Difference_>> InnerTriConstraintCollectors.toConnectedRanges(TriFunction<? super A, ? super B, ? super C, ? extends Interval_> mapper, Function<? super Interval_, ? extends Point_> startMap, Function<? super Interval_, ? extends Point_> endMap, BiFunction<? super Point_, ? super Point_, ? extends Difference_> differenceFunction) static <A,B, C, Result_>
TriConstraintCollector<A,B, C, ?, SequenceChain<Result_, Integer>> InnerTriConstraintCollectors.toConsecutiveSequences(TriFunction<A, B, C, Result_> resultMap, ToIntFunction<Result_> indexMap) static <A,B, C, Mapped_>
TriConstraintCollector<A,B, C, ?, List<Mapped_>> InnerTriConstraintCollectors.toList(TriFunction<? super A, ? super B, ? super C, ? extends Mapped_> mapper) static <A,B, C, Key_, Value_, Result_ extends Map<Key_, Value_>>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.toMap(TriFunction<? super A, ? super B, ? super C, ? extends Key_> keyFunction, TriFunction<? super A, ? super B, ? super C, ? extends Value_> valueFunction, Supplier<Result_> mapSupplier, BinaryOperator<Value_> mergeFunction) static <A,B, C, Key_, Value_, Set_ extends Set<Value_>, Result_ extends Map<Key_, Set_>>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.toMap(TriFunction<? super A, ? super B, ? super C, ? extends Key_> keyFunction, TriFunction<? super A, ? super B, ? super C, ? extends Value_> valueFunction, Supplier<Result_> mapSupplier, IntFunction<Set_> setFunction) static <A,B, C, Mapped_>
TriConstraintCollector<A,B, C, ?, Set<Mapped_>> InnerTriConstraintCollectors.toSet(TriFunction<? super A, ? super B, ? super C, ? extends Mapped_> mapper) static <A,B, C, Mapped_>
TriConstraintCollector<A,B, C, ?, SortedSet<Mapped_>> InnerTriConstraintCollectors.toSortedSet(TriFunction<? super A, ? super B, ? super C, ? extends Mapped_> mapper, Comparator<? super Mapped_> comparator) -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.collector.uni
Methods in ai.timefold.solver.core.impl.score.stream.collector.uni with parameters of type TriFunctionModifier and TypeMethodDescriptionstatic <A,ResultHolder1_, ResultHolder2_, ResultHolder3_, Result1_, Result2_, Result3_, Result_>
UniConstraintCollector<A,?, Result_> InnerUniConstraintCollectors.compose(UniConstraintCollector<A, ResultHolder1_, Result1_> first, UniConstraintCollector<A, ResultHolder2_, Result2_> second, UniConstraintCollector<A, ResultHolder3_, Result3_> third, TriFunction<Result1_, Result2_, Result3_, Result_> composeFunction) -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.common.bi
Methods in ai.timefold.solver.core.impl.score.stream.common.bi that return TriFunctionModifier and TypeMethodDescriptionstatic <A,B> TriFunction<A, B, Score<?>, DefaultConstraintJustification> InnerBiConstraintStream.createDefaultJustificationMapping()protected TriFunction<A,B, Score_, ConstraintJustification> BiConstraintBuilderImpl.getJustificationMapping()Methods in ai.timefold.solver.core.impl.score.stream.common.bi with parameters of type TriFunctionModifier and TypeMethodDescription<ConstraintJustification_ extends ConstraintJustification>
@NonNull BiConstraintBuilder<A,B, Score_> BiConstraintBuilderImpl.justifyWith(@NonNull TriFunction<A, B, Score_, ConstraintJustification_> justificationMapping) -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.common.inliner
Methods in ai.timefold.solver.core.impl.score.stream.common.inliner with parameters of type TriFunctionModifier and TypeMethodDescriptionstatic <A,B, C, Score_ extends Score<Score_>>
ConstraintMatchSupplier<Score_>ConstraintMatchSupplier.of(QuadFunction<A, B, C, Score_, ConstraintJustification> justificationMapping, TriFunction<A, B, C, Collection<Object>> indictedObjectsMapping, A a, B b, C c) static <A,B, Score_ extends Score<Score_>>
ConstraintMatchSupplier<Score_>ConstraintMatchSupplier.of(TriFunction<A, B, Score_, ConstraintJustification> justificationMapping, BiFunction<A, B, Collection<Object>> indictedObjectsMapping, A a, B b) -
Uses of TriFunction in ai.timefold.solver.core.impl.score.stream.common.tri
Methods in ai.timefold.solver.core.impl.score.stream.common.tri that return TriFunctionModifier and TypeMethodDescriptionstatic <A,B, C> TriFunction<A, B, C, Collection<?>> InnerTriConstraintStream.createDefaultIndictedObjectsMapping()protected TriFunction<A,B, C, Collection<Object>> TriConstraintBuilderImpl.getIndictedObjectsMapping()Methods in ai.timefold.solver.core.impl.score.stream.common.tri with parameters of type TriFunctionModifier and TypeMethodDescriptiondefault <Score_ extends Score<Score_>>
@NonNull TriConstraintBuilder<A,B, C, Score_> InnerTriConstraintStream.impactBigDecimal(@NonNull Score_ constraintWeight, @NonNull TriFunction<A, B, C, BigDecimal> matchWeigher) default TriConstraintBuilder<A,B, C, ?> InnerTriConstraintStream.impactConfigurableBigDecimal(TriFunction<A, B, C, BigDecimal> matchWeigher) @NonNull TriConstraintBuilder<A,B, C, Score_> TriConstraintBuilderImpl.indictWith(@NonNull TriFunction<A, B, C, Collection<Object>> indictedObjectsMapping) <Score_ extends Score<Score_>>
TriConstraintBuilder<A,B, C, Score_> InnerTriConstraintStream.innerImpact(Score_ constraintWeight, TriFunction<A, B, C, BigDecimal> matchWeigher, ScoreImpactType scoreImpactType) default <Score_ extends Score<Score_>>
@NonNull TriConstraintBuilder<A,B, C, Score_> InnerTriConstraintStream.penalizeBigDecimal(@NonNull Score_ constraintWeight, @NonNull TriFunction<A, B, C, BigDecimal> matchWeigher) default TriConstraintBuilder<A,B, C, ?> InnerTriConstraintStream.penalizeConfigurableBigDecimal(TriFunction<A, B, C, BigDecimal> matchWeigher) default <Score_ extends Score<Score_>>
@NonNull TriConstraintBuilder<A,B, C, Score_> InnerTriConstraintStream.rewardBigDecimal(@NonNull Score_ constraintWeight, @NonNull TriFunction<A, B, C, BigDecimal> matchWeigher) default TriConstraintBuilder<A,B, C, ?> InnerTriConstraintStream.rewardConfigurableBigDecimal(TriFunction<A, B, C, BigDecimal> matchWeigher) -
Uses of TriFunction in ai.timefold.solver.core.impl.util
Methods in ai.timefold.solver.core.impl.util that return TriFunctionModifier and TypeMethodDescriptionstatic <A,B, C, D> TriFunction<A, B, C, D> ConstantLambdaUtils.triConstantNull()Returns aTriFunctionthat returns null.static <A,B, C> TriFunction<A, B, C, BigDecimal> ConstantLambdaUtils.triConstantOneBigDecimal()Returns aTriFunctionthat returns the constant 1.static <A,B, C> TriFunction<A, B, C, A> ConstantLambdaUtils.triPickFirst()Returns aTriFunctionthat returns its first input.static <A,B, C> TriFunction<A, B, C, B> ConstantLambdaUtils.triPickSecond()Returns aTriFunctionthat returns its second input.static <A,B, C> TriFunction<A, B, C, C> ConstantLambdaUtils.triPickThird()Returns aTriFunctionthat returns its third input.
ConstraintCollectors.max(TriFunction, Function), as this method can lead to unavoidable score corruptions.