Uses of Interface
ai.timefold.solver.core.api.score.stream.tri.TriConstraintCollector
Packages that use TriConstraintCollector
-
Uses of TriConstraintCollector in ai.timefold.solver.core.api.score.stream
Methods in ai.timefold.solver.core.api.score.stream that return TriConstraintCollectorModifier and TypeMethodDescriptionstatic <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, Double> ConstraintCollectors.average(@NonNull ToIntTriFunction<A, B, C> groupValueMapping) As defined byConstraintCollectors.average(ToIntFunction).static <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, C> @NonNull TriConstraintCollector<A, B, C, ?, Double> ConstraintCollectors.averageLong(@NonNull ToLongTriFunction<A, B, C> groupValueMapping) As defined byConstraintCollectors.average(ToIntFunction).static <A,B, C, Intermediate_, Result_>
@NonNull TriConstraintCollector<A,B, C, ?, Result_> ConstraintCollectors.collectAndThen(@NonNull TriConstraintCollector<A, B, C, ?, Intermediate_> delegate, @NonNull Function<Intermediate_, Result_> mappingFunction) 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,B, C, Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResultContainer4_, SubResult1_, SubResult2_, SubResult3_, SubResult4_>
@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 TriConstraintCollector<A, B, C, SubResultContainer4_, SubResult4_> subCollector4, @NonNull QuadFunction<SubResult1_, SubResult2_, SubResult3_, SubResult4_, Result_> composeFunction) static <A,B, C, Result_, SubResultContainer1_, SubResultContainer2_, SubResult1_, SubResult2_>
@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 BiFunction<SubResult1_, SubResult2_, Result_> composeFunction) static <A,B, C, ResultContainer_, Result_>
@NonNull TriConstraintCollector<A,B, C, ResultContainer_, Result_> ConstraintCollectors.conditionally(@NonNull TriPredicate<A, B, C> condition, @NonNull TriConstraintCollector<A, B, C, ResultContainer_, Result_> delegate) 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> @NonNull TriConstraintCollector<A, B, C, ?, Long> ConstraintCollectors.countLongTri()As defined byConstraintCollectors.count().static <A,B, C> @NonNull TriConstraintCollector<A, B, C, ?, Integer> ConstraintCollectors.countTri()As defined byConstraintCollectors.count().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> @NonNull TriConstraintCollector<A, B, C, ?, Integer> ConstraintCollectors.sum(@NonNull ToIntTriFunction<? super A, ? super B, ? super C> groupValueMapping) As defined byConstraintCollectors.sum(ToIntFunction).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, ?, Long> ConstraintCollectors.sumLong(@NonNull ToLongTriFunction<? super A, ? super B, ? super C> 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).Methods in ai.timefold.solver.core.api.score.stream with parameters of type TriConstraintCollectorModifier and TypeMethodDescriptionstatic <A,B, C, Intermediate_, Result_>
@NonNull TriConstraintCollector<A,B, C, ?, Result_> ConstraintCollectors.collectAndThen(@NonNull TriConstraintCollector<A, B, C, ?, Intermediate_> delegate, @NonNull Function<Intermediate_, Result_> mappingFunction) 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,B, C, Result_, SubResultContainer1_, SubResultContainer2_, SubResultContainer3_, SubResultContainer4_, SubResult1_, SubResult2_, SubResult3_, SubResult4_>
@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 TriConstraintCollector<A, B, C, SubResultContainer4_, SubResult4_> subCollector4, @NonNull QuadFunction<SubResult1_, SubResult2_, SubResult3_, SubResult4_, Result_> composeFunction) static <A,B, C, Result_, SubResultContainer1_, SubResultContainer2_, SubResult1_, SubResult2_>
@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 BiFunction<SubResult1_, SubResult2_, Result_> composeFunction) static <A,B, C, ResultContainer_, Result_>
@NonNull TriConstraintCollector<A,B, C, ResultContainer_, Result_> ConstraintCollectors.conditionally(@NonNull TriPredicate<A, B, C> condition, @NonNull TriConstraintCollector<A, B, C, ResultContainer_, Result_> delegate) -
Uses of TriConstraintCollector in ai.timefold.solver.core.api.score.stream.tri
Methods in ai.timefold.solver.core.api.score.stream.tri with parameters of type TriConstraintCollectorModifier and TypeMethodDescription<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_, 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).<ResultContainer_,Result_>
@NonNull UniConstraintStream<Result_>TriConstraintStream.groupBy(@NonNull TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) Convert theTriConstraintStreamto aUniConstraintStream, containing only a single tuple, the result of applyingTriConstraintCollector.<ResultContainerA_,ResultA_, ResultContainerB_, ResultB_>
@NonNull BiConstraintStream<ResultA_,ResultB_> TriConstraintStream.groupBy(@NonNull TriConstraintCollector<A, B, C, ResultContainerA_, ResultA_> collectorA, @NonNull TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB) Convert theTriConstraintStreamto aBiConstraintStream, containing only a single tuple, the result of applying twoTriConstraintCollectors.<ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
@NonNull TriConstraintStream<ResultA_,ResultB_, ResultC_> TriConstraintStream.groupBy(@NonNull TriConstraintCollector<A, B, C, ResultContainerA_, ResultA_> collectorA, @NonNull TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, @NonNull TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC) Convert theTriConstraintStreamto aTriConstraintStream, containing only a single tuple, the result of applying threeTriConstraintCollectors.<ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
@NonNull QuadConstraintStream<ResultA_,ResultB_, ResultC_, ResultD_> TriConstraintStream.groupBy(@NonNull TriConstraintCollector<A, B, C, ResultContainerA_, ResultA_> collectorA, @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, containing only a single tuple, the result of applying fourTriConstraintCollectors. -
Uses of TriConstraintCollector in ai.timefold.solver.core.impl.bavet.tri
Constructors in ai.timefold.solver.core.impl.bavet.tri with parameters of type TriConstraintCollectorModifierConstructorDescriptionGroup0Mapping1CollectorTriNode(int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainer_, A> collector, TupleLifecycle<UniTuple<A>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group0Mapping2CollectorTriNode(int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainerA_, A> collectorA, TriConstraintCollector<OldA, OldB, OldC, ResultContainerB_, B> collectorB, TupleLifecycle<BiTuple<A, B>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group0Mapping3CollectorTriNode(int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainerA_, A> collectorA, TriConstraintCollector<OldA, OldB, OldC, ResultContainerB_, B> collectorB, TriConstraintCollector<OldA, OldB, OldC, ResultContainerC_, C> collectorC, TupleLifecycle<TriTuple<A, B, C>> nextNodesTupleLifecycle, int outputStoreSize, EnvironmentMode environmentMode) Group0Mapping4CollectorTriNode(int groupStoreIndex, int undoStoreIndex, TriConstraintCollector<OldA, OldB, OldC, ResultContainerA_, A> collectorA, 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) 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) 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) 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) -
Uses of TriConstraintCollector in ai.timefold.solver.core.impl.score.stream.bavet.tri
Methods in ai.timefold.solver.core.impl.score.stream.bavet.tri with parameters of type TriConstraintCollectorModifier and TypeMethodDescription<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_, 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) <ResultContainer_,Result_>
@NonNull UniConstraintStream<Result_>BavetAbstractTriConstraintStream.groupBy(@NonNull TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_>
@NonNull BiConstraintStream<ResultA_,ResultB_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriConstraintCollector<A, B, C, ResultContainerA_, ResultA_> collectorA, @NonNull TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
@NonNull TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriConstraintCollector<A, B, C, ResultContainerA_, ResultA_> collectorA, @NonNull TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, @NonNull TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
@NonNull QuadConstraintStream<ResultA_,ResultB_, ResultC_, ResultD_> BavetAbstractTriConstraintStream.groupBy(@NonNull TriConstraintCollector<A, B, C, ResultContainerA_, ResultA_> collectorA, @NonNull TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, @NonNull TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC, @NonNull TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) -
Uses of TriConstraintCollector in ai.timefold.solver.core.impl.score.stream.collector.tri
Methods in ai.timefold.solver.core.impl.score.stream.collector.tri that return TriConstraintCollectorModifier and TypeMethodDescriptionstatic <A,B, C> TriConstraintCollector<A, B, C, ?, Double> InnerTriConstraintCollectors.average(ToIntTriFunction<? super A, ? super B, ? super C> mapper) static <A,B, C> TriConstraintCollector<A, B, C, ?, Double> InnerTriConstraintCollectors.average(ToLongTriFunction<? super A, ? super B, ? super C> mapper) static <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, Intermediate_, Result_>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.collectAndThen(TriConstraintCollector<A, B, C, ?, Intermediate_> delegate, Function<Intermediate_, Result_> mappingFunction) 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, ResultHolder1_, ResultHolder2_, ResultHolder3_, ResultHolder4_, Result1_, Result2_, Result3_, Result4_, 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, TriConstraintCollector<A, B, C, ResultHolder4_, Result4_> fourth, QuadFunction<Result1_, Result2_, Result3_, Result4_, Result_> composeFunction) static <A,B, C, ResultHolder1_, ResultHolder2_, Result1_, Result2_, Result_>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.compose(TriConstraintCollector<A, B, C, ResultHolder1_, Result1_> first, TriConstraintCollector<A, B, C, ResultHolder2_, Result2_> second, BiFunction<Result1_, Result2_, Result_> composeFunction) static <A,B, C, ResultContainer_, Result_>
TriConstraintCollector<A,B, C, ResultContainer_, Result_> InnerTriConstraintCollectors.conditionally(TriPredicate<A, B, C> predicate, TriConstraintCollector<A, B, C, ResultContainer_, Result_> delegate) static <A,B, C> TriConstraintCollector<A, B, C, ?, Integer> InnerTriConstraintCollectors.count()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> TriConstraintCollector<A, B, C, ?, Long> InnerTriConstraintCollectors.countLong()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> TriConstraintCollector<A, B, C, ?, Integer> InnerTriConstraintCollectors.sum(ToIntTriFunction<? super A, ? super B, ? super C> mapper) static <A,B, C> TriConstraintCollector<A, B, C, ?, Long> InnerTriConstraintCollectors.sum(ToLongTriFunction<? super A, ? super B, ? super C> mapper) 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) Methods in ai.timefold.solver.core.impl.score.stream.collector.tri with parameters of type TriConstraintCollectorModifier and TypeMethodDescriptionstatic <A,B, C, Intermediate_, Result_>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.collectAndThen(TriConstraintCollector<A, B, C, ?, Intermediate_> delegate, Function<Intermediate_, Result_> mappingFunction) 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, ResultHolder1_, ResultHolder2_, ResultHolder3_, ResultHolder4_, Result1_, Result2_, Result3_, Result4_, 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, TriConstraintCollector<A, B, C, ResultHolder4_, Result4_> fourth, QuadFunction<Result1_, Result2_, Result3_, Result4_, Result_> composeFunction) static <A,B, C, ResultHolder1_, ResultHolder2_, Result1_, Result2_, Result_>
TriConstraintCollector<A,B, C, ?, Result_> InnerTriConstraintCollectors.compose(TriConstraintCollector<A, B, C, ResultHolder1_, Result1_> first, TriConstraintCollector<A, B, C, ResultHolder2_, Result2_> second, BiFunction<Result1_, Result2_, Result_> composeFunction) static <A,B, C, ResultContainer_, Result_>
TriConstraintCollector<A,B, C, ResultContainer_, Result_> InnerTriConstraintCollectors.conditionally(TriPredicate<A, B, C> predicate, TriConstraintCollector<A, B, C, ResultContainer_, Result_> delegate)
ConstraintCollectors.max(TriFunction, Function), as this method can lead to unavoidable score corruptions.