Uses of Interface
ai.timefold.solver.core.api.score.stream.tri.TriConstraintStream
Packages that use TriConstraintStream
Package
Description
The
ConstraintStream API for bi-tuples.The
ConstraintStream API for four matched facts.The
ConstraintStream API for tri-tuples.The
ConstraintStream API for uni-tuples.Contains streams that serve as bridges.
-
Uses of TriConstraintStream in ai.timefold.solver.core.api.score.stream.bi
Methods in ai.timefold.solver.core.api.score.stream.bi that return TriConstraintStreamModifier and TypeMethodDescriptiondefault <C> TriConstraintStream<A,B, C> BiConstraintStream.concat(TriConstraintStream<A, B, C> otherStream) Returns a newTriConstraintStreamcontaining all the tuples of both thisBiConstraintStreamand the providedTriConstraintStream.<C> TriConstraintStream<A,B, C> BiConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, BiFunction<A, B, C> paddingFunction) Returns a newTriConstraintStreamcontaining all the tuples of both thisBiConstraintStreamand the providedTriConstraintStream.<ResultC_> TriConstraintStream<A,B, ResultC_> BiConstraintStream.expand(BiFunction<A, B, ResultC_> mapping) Adds a fact to the end of the tuple, increasing the cardinality of the stream.<ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BiConstraintStream.groupBy(BiConstraintCollector<A, B, ResultContainerA_, ResultA_> collectorA, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC) Convert theBiConstraintStreamto aTriConstraintStream, containing only a single tuple, the result of applying threeBiConstraintCollectors.<GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> BiConstraintStream.groupBy(BiFunction<A, B, GroupKey_> groupKeyMapping, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC) Convert theBiConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.<GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> BiConstraintStream.groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A, B, ResultContainer_, Result_> collector) Combines the semantics ofBiConstraintStream.groupBy(BiFunction, BiFunction)andBiConstraintStream.groupBy(BiConstraintCollector).<GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> BiConstraintStream.groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiFunction<A, B, GroupKeyC_> groupKeyCMapping) Convert theBiConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.default <C> TriConstraintStream<A,B, C> BiConstraintStream.join(UniConstraintStream<C> otherStream) Create a newTriConstraintStreamfor every combination of [A, B] and C.default <C> TriConstraintStream<A,B, C> BiConstraintStream.join(UniConstraintStream<C> otherStream, TriJoiner<A, B, C> joiner) Create a newTriConstraintStreamfor every combination of [A, B] and C for which theTriJoineris true (for the properties it extracts from both facts).<C> TriConstraintStream<A,B, C> BiConstraintStream.join(UniConstraintStream<C> otherStream, TriJoiner<A, B, C>... joiners) As defined byBiConstraintStream.join(Class, TriJoiner).default <C> TriConstraintStream<A,B, C> BiConstraintStream.join(UniConstraintStream<C> otherStream, TriJoiner<A, B, C> joiner1, TriJoiner<A, B, C> joiner2) As defined byBiConstraintStream.join(Class, TriJoiner).default <C> TriConstraintStream<A,B, C> BiConstraintStream.join(UniConstraintStream<C> otherStream, TriJoiner<A, B, C> joiner1, TriJoiner<A, B, C> joiner2, TriJoiner<A, B, C> joiner3) As defined byBiConstraintStream.join(Class, TriJoiner).default <C> TriConstraintStream<A,B, C> BiConstraintStream.join(UniConstraintStream<C> otherStream, TriJoiner<A, B, C> joiner1, TriJoiner<A, B, C> joiner2, TriJoiner<A, B, C> joiner3, TriJoiner<A, B, C> joiner4) As defined byBiConstraintStream.join(Class, TriJoiner).default <C> TriConstraintStream<A,B, C> Create a newTriConstraintStreamfor every combination of [A, B] and C.default <C> TriConstraintStream<A,B, C> Create a newTriConstraintStreamfor every combination of [A, B] and C for which theTriJoineris true (for the properties it extracts from both facts).<C> TriConstraintStream<A,B, C> As defined byBiConstraintStream.join(Class, TriJoiner).default <C> TriConstraintStream<A,B, C> As defined byBiConstraintStream.join(Class, TriJoiner).default <C> TriConstraintStream<A,B, C> BiConstraintStream.join(Class<C> otherClass, TriJoiner<A, B, C> joiner1, TriJoiner<A, B, C> joiner2, TriJoiner<A, B, C> joiner3) As defined byBiConstraintStream.join(Class, TriJoiner).default <C> TriConstraintStream<A,B, C> BiConstraintStream.join(Class<C> otherClass, TriJoiner<A, B, C> joiner1, TriJoiner<A, B, C> joiner2, TriJoiner<A, B, C> joiner3, TriJoiner<A, B, C> joiner4) As defined byBiConstraintStream.join(Class, TriJoiner).<ResultA_,ResultB_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BiConstraintStream.map(BiFunction<A, B, ResultA_> mappingA, BiFunction<A, B, ResultB_> mappingB, BiFunction<A, B, ResultC_> mappingC) As defined byBiConstraintStream.map(BiFunction), only resulting inTriConstraintStream.Methods in ai.timefold.solver.core.api.score.stream.bi with parameters of type TriConstraintStreamModifier and TypeMethodDescriptiondefault <C> TriConstraintStream<A,B, C> BiConstraintStream.concat(TriConstraintStream<A, B, C> otherStream) Returns a newTriConstraintStreamcontaining all the tuples of both thisBiConstraintStreamand the providedTriConstraintStream.<C> TriConstraintStream<A,B, C> BiConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, BiFunction<A, B, C> paddingFunction) Returns a newTriConstraintStreamcontaining all the tuples of both thisBiConstraintStreamand the providedTriConstraintStream. -
Uses of TriConstraintStream in ai.timefold.solver.core.api.score.stream.quad
Methods in ai.timefold.solver.core.api.score.stream.quad that return TriConstraintStreamModifier and TypeMethodDescription<GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> QuadConstraintStream.groupBy(QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) Convert theQuadConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.<GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> QuadConstraintStream.groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping) Convert theQuadConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.<GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> QuadConstraintStream.groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) Combines the semantics ofQuadConstraintStream.groupBy(QuadFunction, QuadFunction)andQuadConstraintStream.groupBy(QuadConstraintCollector).<ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> QuadConstraintStream.groupBy(QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) Convert theQuadConstraintStreamto aTriConstraintStream, containing only a single tuple, the result of applying threeQuadConstraintCollectors.<ResultA_,ResultB_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> QuadConstraintStream.map(QuadFunction<A, B, C, D, ResultA_> mappingA, QuadFunction<A, B, C, D, ResultB_> mappingB, QuadFunction<A, B, C, D, ResultC_> mappingC) As defined byQuadConstraintStream.map(QuadFunction), only resulting inTriConstraintStream.Methods in ai.timefold.solver.core.api.score.stream.quad with parameters of type TriConstraintStreamModifier and TypeMethodDescriptiondefault QuadConstraintStream<A,B, C, D> QuadConstraintStream.concat(TriConstraintStream<A, B, C> otherStream) Returns a newQuadConstraintStreamcontaining all the tuples of both thisQuadConstraintStreamand the providedTriConstraintStream.QuadConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, TriFunction<A, B, C, D> paddingFunction) Returns a newQuadConstraintStreamcontaining all the tuples of both thisQuadConstraintStreamand the providedTriConstraintStream. -
Uses of TriConstraintStream in ai.timefold.solver.core.api.score.stream.tri
Methods in ai.timefold.solver.core.api.score.stream.tri that return TriConstraintStreamModifier and TypeMethodDescriptiondefault TriConstraintStream<A,B, C> TriConstraintStream.complement(Class<A> otherClass) As defined bycomplement(Class, Function, Function), where the padding function pads with null.default TriConstraintStream<A,B, C> TriConstraintStream.complement(Class<A> otherClass, Function<A, B> paddingFunctionB, Function<A, C> paddingFunctionC) Adds to the stream all instances of a given class which are not yet present in it.default TriConstraintStream<A,B, C> TriConstraintStream.concat(BiConstraintStream<A, B> otherStream) Returns a newTriConstraintStreamcontaining all the tuples of both thisTriConstraintStreamand the providedBiConstraintStream.TriConstraintStream.concat(BiConstraintStream<A, B> otherStream, BiFunction<A, B, C> paddingFunctionC) Returns a newTriConstraintStreamcontaining all the tuples of both thisTriConstraintStreamand the providedBiConstraintStream.TriConstraintStream.concat(TriConstraintStream<A, B, C> otherStream) Returns a newTriConstraintStreamcontaining all the tuples of both thisTriConstraintStreamand the providedTriConstraintStream.default TriConstraintStream<A,B, C> TriConstraintStream.concat(UniConstraintStream<A> otherStream) Returns a newTriConstraintStreamcontaining all the tuples of both thisTriConstraintStreamand the providedUniConstraintStream.TriConstraintStream.concat(UniConstraintStream<A> otherStream, Function<A, B> paddingFunctionB, Function<A, C> paddingFunctionC) Returns a newTriConstraintStreamcontaining all the tuples of both thisTriConstraintStreamand the providedUniConstraintStream.TriConstraintStream.distinct()TriConstraintStream.filter(TriPredicate<A, B, C> predicate) Exhaustively test each tuple of facts against theTriPredicateand match ifTriPredicate.test(Object, Object, Object)returns true.<ResultC_> TriConstraintStream<A,B, ResultC_> TriConstraintStream.flattenLast(Function<C, Iterable<ResultC_>> mapping) As defined byBiConstraintStream.flattenLast(Function).<GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> TriConstraintStream.groupBy(TriFunction<A, B, C, GroupKey_> groupKeyMapping, TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC) Convert theTriConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.<GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> TriConstraintStream.groupBy(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping) Convert theTriConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.<GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> TriConstraintStream.groupBy(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) Combines the semantics ofgroupBy(TriFunction, TriFunction)andgroupBy(TriConstraintCollector).<ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> TriConstraintStream.groupBy(TriConstraintCollector<A, B, C, ResultContainerA_, ResultA_> collectorA, TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC) Convert theTriConstraintStreamto aTriConstraintStream, containing only a single tuple, the result of applying threeTriConstraintCollectors.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D> joiner) Create a newBiConstraintStreamfor every tuple of A, B and C where D exists for which theQuadJoineris true (for the properties it extracts from the facts).<D> TriConstraintStream<A,B, C> TriConstraintStream.ifExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D>... joiners) As defined byifExists(UniConstraintStream, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2) As defined byifExists(UniConstraintStream, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3) As defined byifExists(UniConstraintStream, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3, QuadJoiner<A, B, C, D> joiner4) As defined byifExists(UniConstraintStream, QuadJoiner).default <D> TriConstraintStream<A,B, C> Create a newBiConstraintStreamfor every tuple of A, B and C where D exists for which theQuadJoineris true (for the properties it extracts from the facts).<D> TriConstraintStream<A,B, C> As defined byifExists(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExists(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2) As defined byifExists(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExists(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3) As defined byifExists(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExists(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3, QuadJoiner<A, B, C, D> joiner4) As defined byifExists(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D>... joiners) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3, QuadJoiner<A, B, C, D> joiner4) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner) Create a newBiConstraintStreamfor every tuple of A, B and C where D exists for which theQuadJoineris true (for the properties it extracts from the facts).<D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D>... joiners) As defined byifExistsIncludingUnassigned(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2) As defined byifExistsIncludingUnassigned(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3) As defined byifExistsIncludingUnassigned(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3, QuadJoiner<A, B, C, D> joiner4) As defined byifExistsIncludingUnassigned(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D> joiner) Create a newBiConstraintStreamfor every tuple of A, B and C where D does not exist for which theQuadJoineris true (for the properties it extracts from the facts).<D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D>... joiners) As defined byifNotExists(UniConstraintStream, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2) As defined byifNotExists(UniConstraintStream, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3) As defined byifNotExists(UniConstraintStream, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3, QuadJoiner<A, B, C, D> joiner4) As defined byifNotExists(UniConstraintStream, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner) Create a newBiConstraintStreamfor every tuple of A, B and C where D does not exist for which theQuadJoineris true (for the properties it extracts from the facts).<D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(Class<D> otherClass, QuadJoiner<A, B, C, D>... joiners) As defined byifNotExists(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2) As defined byifNotExists(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3) As defined byifNotExists(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExists(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3, QuadJoiner<A, B, C, D> joiner4) As defined byifNotExists(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D>... joiners) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingNullVars(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3, QuadJoiner<A, B, C, D> joiner4) Deprecated, for removal: This API element is subject to removal in a future version.default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner) Create a newBiConstraintStreamfor every tuple of A, B and C where D does not exist for which theQuadJoineris true (for the properties it extracts from the facts).<D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D>... joiners) As defined byifNotExistsIncludingUnassigned(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2) As defined byifNotExistsIncludingUnassigned(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3) As defined byifNotExistsIncludingUnassigned(Class, QuadJoiner).default <D> TriConstraintStream<A,B, C> TriConstraintStream.ifNotExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D> joiner1, QuadJoiner<A, B, C, D> joiner2, QuadJoiner<A, B, C, D> joiner3, QuadJoiner<A, B, C, D> joiner4) As defined byifNotExistsIncludingUnassigned(Class, QuadJoiner).<ResultA_,ResultB_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> TriConstraintStream.map(TriFunction<A, B, C, ResultA_> mappingA, TriFunction<A, B, C, ResultB_> mappingB, TriFunction<A, B, C, ResultC_> mappingC) As defined bymap(TriFunction), only resulting inTriConstraintStream.Methods in ai.timefold.solver.core.api.score.stream.tri with parameters of type TriConstraintStreamModifier and TypeMethodDescriptionTriConstraintStream.concat(TriConstraintStream<A, B, C> otherStream) Returns a newTriConstraintStreamcontaining all the tuples of both thisTriConstraintStreamand the providedTriConstraintStream. -
Uses of TriConstraintStream in ai.timefold.solver.core.api.score.stream.uni
Methods in ai.timefold.solver.core.api.score.stream.uni that return TriConstraintStreamModifier and TypeMethodDescriptiondefault <B,C> TriConstraintStream<A, B, C> UniConstraintStream.concat(TriConstraintStream<A, B, C> otherStream) Returns a newTriConstraintStreamcontaining all the tuples of both thisUniConstraintStreamand the providedTriConstraintStream.<B,C> TriConstraintStream<A, B, C> UniConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, Function<A, B> paddingFunctionB, Function<A, C> paddingFunctionC) Returns a newTriConstraintStreamcontaining all the tuples of both thisUniConstraintStreamand the providedTriConstraintStream.<ResultB_,ResultC_>
TriConstraintStream<A,ResultB_, ResultC_> Adds two facts to the end of the tuple, increasing the cardinality of the stream.<ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> UniConstraintStream.groupBy(UniConstraintCollector<A, ResultContainerA_, ResultA_> collectorA, UniConstraintCollector<A, ResultContainerB_, ResultB_> collectorB, UniConstraintCollector<A, ResultContainerC_, ResultC_> collectorC) Convert theUniConstraintStreamto aTriConstraintStream, containing only a single tuple, the result of applying threeUniConstraintCollectors.<GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> UniConstraintStream.groupBy(Function<A, GroupKey_> groupKeyMapping, UniConstraintCollector<A, ResultContainerB_, ResultB_> collectorB, UniConstraintCollector<A, ResultContainerC_, ResultC_> collectorC) Convert theUniConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.<GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> UniConstraintStream.groupBy(Function<A, GroupKeyA_> groupKeyAMapping, Function<A, GroupKeyB_> groupKeyBMapping, UniConstraintCollector<A, ResultContainer_, Result_> collector) Combines the semantics ofUniConstraintStream.groupBy(Function, Function)andUniConstraintStream.groupBy(UniConstraintCollector).<GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> UniConstraintStream.groupBy(Function<A, GroupKeyA_> groupKeyAMapping, Function<A, GroupKeyB_> groupKeyBMapping, Function<A, GroupKeyC_> groupKeyCMapping) Convert theUniConstraintStreamto aTriConstraintStream, consisting of unique tuples with three facts.<ResultA_,ResultB_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> UniConstraintStream.map(Function<A, ResultA_> mappingA, Function<A, ResultB_> mappingB, Function<A, ResultC_> mappingC) As defined byUniConstraintStream.map(Function), only resulting inTriConstraintStream.Methods in ai.timefold.solver.core.api.score.stream.uni with parameters of type TriConstraintStreamModifier and TypeMethodDescriptiondefault <B,C> TriConstraintStream<A, B, C> UniConstraintStream.concat(TriConstraintStream<A, B, C> otherStream) Returns a newTriConstraintStreamcontaining all the tuples of both thisUniConstraintStreamand the providedTriConstraintStream.<B,C> TriConstraintStream<A, B, C> UniConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, Function<A, B> paddingFunctionB, Function<A, C> paddingFunctionC) Returns a newTriConstraintStreamcontaining all the tuples of both thisUniConstraintStreamand the providedTriConstraintStream. -
Uses of TriConstraintStream in ai.timefold.solver.core.impl.score.stream.bavet.bi
Methods in ai.timefold.solver.core.impl.score.stream.bavet.bi that return TriConstraintStreamModifier and TypeMethodDescription<C> TriConstraintStream<A,B, C> BavetAbstractBiConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, BiFunction<A, B, C> paddingFunction) <ResultC_> TriConstraintStream<A,B, ResultC_> BavetAbstractBiConstraintStream.expand(BiFunction<A, B, ResultC_> mapping) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractBiConstraintStream.groupBy(BiConstraintCollector<A, B, ResultContainerA_, ResultA_> collectorA, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> BavetAbstractBiConstraintStream.groupBy(BiFunction<A, B, GroupKey_> groupKeyMapping, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC) <GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> BavetAbstractBiConstraintStream.groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A, B, ResultContainer_, Result_> collector) <GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> BavetAbstractBiConstraintStream.groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiFunction<A, B, GroupKeyC_> groupKeyCMapping) final <C> TriConstraintStream<A,B, C> BavetAbstractBiConstraintStream.join(UniConstraintStream<C> otherStream, TriJoiner<A, B, C>... joiners) <ResultA_,ResultB_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractBiConstraintStream.map(BiFunction<A, B, ResultA_> mappingA, BiFunction<A, B, ResultB_> mappingB, BiFunction<A, B, ResultC_> mappingC) Methods in ai.timefold.solver.core.impl.score.stream.bavet.bi with parameters of type TriConstraintStreamModifier and TypeMethodDescription<C> TriConstraintStream<A,B, C> BavetAbstractBiConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, BiFunction<A, B, C> paddingFunction) -
Uses of TriConstraintStream in ai.timefold.solver.core.impl.score.stream.bavet.common.bridge
Classes in ai.timefold.solver.core.impl.score.stream.bavet.common.bridge that implement TriConstraintStreamModifier and TypeClassDescriptionfinal classBavetAftBridgeTriConstraintStream<Solution_,A, B, C> final classBavetForeBridgeTriConstraintStream<Solution_,A, B, C> -
Uses of TriConstraintStream in ai.timefold.solver.core.impl.score.stream.bavet.quad
Methods in ai.timefold.solver.core.impl.score.stream.bavet.quad that return TriConstraintStreamModifier and TypeMethodDescription<GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> BavetAbstractQuadConstraintStream.groupBy(QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) <GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> BavetAbstractQuadConstraintStream.groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping) <GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> BavetAbstractQuadConstraintStream.groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractQuadConstraintStream.groupBy(QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) <ResultA_,ResultB_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractQuadConstraintStream.map(QuadFunction<A, B, C, D, ResultA_> mappingA, QuadFunction<A, B, C, D, ResultB_> mappingB, QuadFunction<A, B, C, D, ResultC_> mappingC) Methods in ai.timefold.solver.core.impl.score.stream.bavet.quad with parameters of type TriConstraintStreamModifier and TypeMethodDescriptionBavetAbstractQuadConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, TriFunction<A, B, C, D> paddingFunction) -
Uses of TriConstraintStream in ai.timefold.solver.core.impl.score.stream.bavet.tri
Classes in ai.timefold.solver.core.impl.score.stream.bavet.tri that implement TriConstraintStreamModifier and TypeClassDescriptionclassBavetAbstractTriConstraintStream<Solution_,A, B, C> final classBavetBiConcatTriConstraintStream<Solution_,A, B, C> final classBavetJoinTriConstraintStream<Solution_,A, B, C> final classBavetTriConcatTriConstraintStream<Solution_,A, B, C> final classBavetUniConcatTriConstraintStream<Solution_,A, B, C> Methods in ai.timefold.solver.core.impl.score.stream.bavet.tri that return TriConstraintStreamModifier and TypeMethodDescriptionBavetAbstractTriConstraintStream.concat(BiConstraintStream<A, B> otherStream, BiFunction<A, B, C> paddingFunction) BavetAbstractTriConstraintStream.concat(TriConstraintStream<A, B, C> otherStream) BavetAbstractTriConstraintStream.concat(UniConstraintStream<A> otherStream, Function<A, B> paddingFunctionB, Function<A, C> paddingFunctionC) BavetAbstractTriConstraintStream.distinct()<ResultC_> TriConstraintStream<A,B, ResultC_> BavetAbstractTriConstraintStream.flattenLast(Function<C, Iterable<ResultC_>> mapping) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> BavetAbstractTriConstraintStream.groupBy(TriFunction<A, B, C, GroupKey_> groupKeyMapping, TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC) <GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> BavetAbstractTriConstraintStream.groupBy(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping) <GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> BavetAbstractTriConstraintStream.groupBy(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriConstraintCollector<A, B, C, ResultContainer_, Result_> collector) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractTriConstraintStream.groupBy(TriConstraintCollector<A, B, C, ResultContainerA_, ResultA_> collectorA, TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC) final <D> TriConstraintStream<A,B, C> BavetAbstractTriConstraintStream.ifExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D>... joiners) final <D> TriConstraintStream<A,B, C> BavetAbstractTriConstraintStream.ifNotExists(UniConstraintStream<D> otherStream, QuadJoiner<A, B, C, D>... joiners) <ResultA_,ResultB_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractTriConstraintStream.map(TriFunction<A, B, C, ResultA_> mappingA, TriFunction<A, B, C, ResultB_> mappingB, TriFunction<A, B, C, ResultC_> mappingC) Methods in ai.timefold.solver.core.impl.score.stream.bavet.tri with parameters of type TriConstraintStreamModifier and TypeMethodDescriptionBavetAbstractTriConstraintStream.concat(TriConstraintStream<A, B, C> otherStream) -
Uses of TriConstraintStream in ai.timefold.solver.core.impl.score.stream.bavet.uni
Methods in ai.timefold.solver.core.impl.score.stream.bavet.uni that return TriConstraintStreamModifier and TypeMethodDescription<B,C> TriConstraintStream<A, B, C> BavetAbstractUniConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, Function<A, B> paddingFunctionB, Function<A, C> paddingFunctionC) <ResultB_,ResultC_>
TriConstraintStream<A,ResultB_, ResultC_> BavetAbstractUniConstraintStream.expand(Function<A, ResultB_> mappingB, Function<A, ResultC_> mappingC) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractUniConstraintStream.groupBy(UniConstraintCollector<A, ResultContainerA_, ResultA_> collectorA, UniConstraintCollector<A, ResultContainerB_, ResultB_> collectorB, UniConstraintCollector<A, ResultContainerC_, ResultC_> collectorC) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> BavetAbstractUniConstraintStream.groupBy(Function<A, GroupKey_> groupKeyMapping, UniConstraintCollector<A, ResultContainerB_, ResultB_> collectorB, UniConstraintCollector<A, ResultContainerC_, ResultC_> collectorC) <GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> BavetAbstractUniConstraintStream.groupBy(Function<A, GroupKeyA_> groupKeyAMapping, Function<A, GroupKeyB_> groupKeyBMapping, UniConstraintCollector<A, ResultContainer_, Result_> collector) <GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> BavetAbstractUniConstraintStream.groupBy(Function<A, GroupKeyA_> groupKeyAMapping, Function<A, GroupKeyB_> groupKeyBMapping, Function<A, GroupKeyC_> groupKeyCMapping) <ResultA_,ResultB_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> BavetAbstractUniConstraintStream.map(Function<A, ResultA_> mappingA, Function<A, ResultB_> mappingB, Function<A, ResultC_> mappingC) Methods in ai.timefold.solver.core.impl.score.stream.bavet.uni with parameters of type TriConstraintStreamModifier and TypeMethodDescription<B,C> TriConstraintStream<A, B, C> BavetAbstractUniConstraintStream.concat(TriConstraintStream<A, B, C> otherStream, Function<A, B> paddingFunctionB, Function<A, C> paddingFunctionC) -
Uses of TriConstraintStream in ai.timefold.solver.core.impl.score.stream.common.bi
Methods in ai.timefold.solver.core.impl.score.stream.common.bi that return TriConstraintStream -
Uses of TriConstraintStream in ai.timefold.solver.core.impl.score.stream.common.tri
Subinterfaces of TriConstraintStream in ai.timefold.solver.core.impl.score.stream.common.triMethods in ai.timefold.solver.core.impl.score.stream.common.tri that return TriConstraintStreamModifier and TypeMethodDescriptiondefault TriConstraintStream<A,B, C> InnerTriConstraintStream.distinct()default <D> TriConstraintStream<A,B, C> default <D> TriConstraintStream<A,B, C> InnerTriConstraintStream.ifExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D>... joiners) default <D> TriConstraintStream<A,B, C> InnerTriConstraintStream.ifNotExists(Class<D> otherClass, QuadJoiner<A, B, C, D>... joiners) default <D> TriConstraintStream<A,B, C> InnerTriConstraintStream.ifNotExistsIncludingUnassigned(Class<D> otherClass, QuadJoiner<A, B, C, D>... joiners)
ifExistsIncludingUnassigned(Class, QuadJoiner).