Uses of Interface
ai.timefold.solver.core.api.score.stream.quad.QuadConstraintStream
-
Packages that use QuadConstraintStream Package Description ai.timefold.solver.core.api.score.stream.bi TheConstraintStreamAPI for bi-tuples.ai.timefold.solver.core.api.score.stream.quad TheConstraintStreamAPI for four matched facts.ai.timefold.solver.core.api.score.stream.tri TheConstraintStreamAPI for tri-tuples.ai.timefold.solver.core.api.score.stream.uni TheConstraintStreamAPI for uni-tuples. -
-
Uses of QuadConstraintStream in ai.timefold.solver.core.api.score.stream.bi
Methods in ai.timefold.solver.core.api.score.stream.bi that return QuadConstraintStream Modifier and Type Method Description <ResultContainerA_,ResultA_,ResultContainerB_,ResultB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<ResultA_,ResultB_,ResultC_,ResultD_>BiConstraintStream. groupBy(BiConstraintCollector<A,B,ResultContainerA_,ResultA_> collectorA, BiConstraintCollector<A,B,ResultContainerB_,ResultB_> collectorB, BiConstraintCollector<A,B,ResultContainerC_,ResultC_> collectorC, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)Convert theBiConstraintStreamto aQuadConstraintStream, containing only a single tuple, the result of applying fourBiConstraintCollectors.<GroupKey_,ResultContainerB_,ResultB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKey_,ResultB_,ResultC_,ResultD_>BiConstraintStream. groupBy(BiFunction<A,B,GroupKey_> groupKeyMapping, BiConstraintCollector<A,B,ResultContainerB_,ResultB_> collectorB, BiConstraintCollector<A,B,ResultContainerC_,ResultC_> collectorC, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)Convert theBiConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts.<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>BiConstraintStream. groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainerC_,ResultC_> collectorC, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)Combines the semantics ofBiConstraintStream.groupBy(BiFunction, BiFunction)andBiConstraintStream.groupBy(BiConstraintCollector).<GroupKeyA_,GroupKeyB_,GroupKeyC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,GroupKeyC_,ResultD_>BiConstraintStream. groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiFunction<A,B,GroupKeyC_> groupKeyCMapping, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)Combines the semantics ofBiConstraintStream.groupBy(BiFunction, BiFunction)andBiConstraintStream.groupBy(BiConstraintCollector).<GroupKeyA_,GroupKeyB_,GroupKeyC_,GroupKeyD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,GroupKeyC_,GroupKeyD_>BiConstraintStream. groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiFunction<A,B,GroupKeyC_> groupKeyCMapping, BiFunction<A,B,GroupKeyD_> groupKeyDMapping)Convert theBiConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts. -
Uses of QuadConstraintStream in ai.timefold.solver.core.api.score.stream.quad
Methods in ai.timefold.solver.core.api.score.stream.quad that return QuadConstraintStream Modifier and Type Method Description QuadConstraintStream<A,B,C,D>QuadConstraintStream. distinct()Transforms the stream in such a way that all the tuples going through it are distinct.QuadConstraintStream<A,B,C,D>QuadConstraintStream. filter(QuadPredicate<A,B,C,D> predicate)Exhaustively test each tuple of facts against theQuadPredicateand match ifQuadPredicate.test(Object, Object, Object, Object)returns true.<ResultD_> QuadConstraintStream<A,B,C,ResultD_>QuadConstraintStream. flattenLast(Function<D,Iterable<ResultD_>> mapping)As defined byBiConstraintStream.flattenLast(Function).<GroupKey_,ResultContainerB_,ResultB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKey_,ResultB_,ResultC_,ResultD_>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, QuadConstraintCollector<A,B,C,D,ResultContainerD_,ResultD_> collectorD)Convert theQuadConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts.<GroupKeyA_,GroupKeyB_,GroupKeyC_,GroupKeyD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,GroupKeyC_,GroupKeyD_>QuadConstraintStream. groupBy(QuadFunction<A,B,C,D,GroupKeyA_> groupKeyAMapping, QuadFunction<A,B,C,D,GroupKeyB_> groupKeyBMapping, QuadFunction<A,B,C,D,GroupKeyC_> groupKeyCMapping, QuadFunction<A,B,C,D,GroupKeyD_> groupKeyDMapping)Convert theTriConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts.<GroupKeyA_,GroupKeyB_,GroupKeyC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,GroupKeyC_,ResultD_>QuadConstraintStream. groupBy(QuadFunction<A,B,C,D,GroupKeyA_> groupKeyAMapping, QuadFunction<A,B,C,D,GroupKeyB_> groupKeyBMapping, QuadFunction<A,B,C,D,GroupKeyC_> groupKeyCMapping, QuadConstraintCollector<A,B,C,D,ResultContainerD_,ResultD_> collectorD)Combines the semantics ofgroupBy(QuadFunction, QuadFunction)andgroupBy(QuadConstraintCollector).<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>QuadConstraintStream. groupBy(QuadFunction<A,B,C,D,GroupKeyA_> groupKeyAMapping, QuadFunction<A,B,C,D,GroupKeyB_> groupKeyBMapping, QuadConstraintCollector<A,B,C,D,ResultContainerC_,ResultC_> collectorC, QuadConstraintCollector<A,B,C,D,ResultContainerD_,ResultD_> collectorD)Combines the semantics ofgroupBy(QuadFunction, QuadFunction)andgroupBy(QuadConstraintCollector).<ResultContainerA_,ResultA_,ResultContainerB_,ResultB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<ResultA_,ResultB_,ResultC_,ResultD_>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, QuadConstraintCollector<A,B,C,D,ResultContainerD_,ResultD_> collectorD)Convert theQuadConstraintStreamto aQuadConstraintStream, containing only a single tuple, the result of applying fourQuadConstraintCollectors.default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner)Create a newBiConstraintStreamfor every tuple of A, B, C and D where E exists for which thePentaJoineris true (for the properties it extracts from the facts).<E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E>... joiners)As defined byifExists(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2)As defined byifExists(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2, PentaJoiner<A,B,C,D,E> joiner3)As defined byifExists(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2, PentaJoiner<A,B,C,D,E> joiner3, PentaJoiner<A,B,C,D,E> joiner4)As defined byifExists(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner)Create a newBiConstraintStreamfor every tuple of A, B, C and D where E exists for which thePentaJoineris true (for the properties it extracts from the facts).<E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E>... joiners)As defined byifExistsIncludingNullVars(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2)As defined byifExistsIncludingNullVars(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2, PentaJoiner<A,B,C,D,E> joiner3)As defined byifExistsIncludingNullVars(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2, PentaJoiner<A,B,C,D,E> joiner3, PentaJoiner<A,B,C,D,E> joiner4)As defined byifExistsIncludingNullVars(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner)Create a newBiConstraintStreamfor every tuple of A, B, C and D where E does not exist for which thePentaJoineris true (for the properties it extracts from the facts).<E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E>... joiners)As defined byifNotExists(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2)As defined byifNotExists(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2, PentaJoiner<A,B,C,D,E> joiner3)As defined byifNotExists(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExists(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2, PentaJoiner<A,B,C,D,E> joiner3, PentaJoiner<A,B,C,D,E> joiner4)As defined byifNotExists(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner)Create a newBiConstraintStreamfor every tuple of A, B, C and D where E does not exist for which thePentaJoineris true (for the properties it extracts from the facts).<E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E>... joiners)As defined byifNotExistsIncludingNullVars(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2)As defined byifNotExistsIncludingNullVars(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2, PentaJoiner<A,B,C,D,E> joiner3)As defined byifNotExistsIncludingNullVars(Class, PentaJoiner).default <E> QuadConstraintStream<A,B,C,D>QuadConstraintStream. ifNotExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A,B,C,D,E> joiner1, PentaJoiner<A,B,C,D,E> joiner2, PentaJoiner<A,B,C,D,E> joiner3, PentaJoiner<A,B,C,D,E> joiner4)As defined byifNotExistsIncludingNullVars(Class, PentaJoiner). -
Uses of QuadConstraintStream in ai.timefold.solver.core.api.score.stream.tri
Methods in ai.timefold.solver.core.api.score.stream.tri that return QuadConstraintStream Modifier and Type Method Description <GroupKey_,ResultContainerB_,ResultB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKey_,ResultB_,ResultC_,ResultD_>TriConstraintStream. groupBy(TriFunction<A,B,C,GroupKey_> groupKeyMapping, TriConstraintCollector<A,B,C,ResultContainerB_,ResultB_> collectorB, TriConstraintCollector<A,B,C,ResultContainerC_,ResultC_> collectorC, TriConstraintCollector<A,B,C,ResultContainerD_,ResultD_> collectorD)Convert theTriConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts.<GroupKeyA_,GroupKeyB_,GroupKeyC_,GroupKeyD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,GroupKeyC_,GroupKeyD_>TriConstraintStream. groupBy(TriFunction<A,B,C,GroupKeyA_> groupKeyAMapping, TriFunction<A,B,C,GroupKeyB_> groupKeyBMapping, TriFunction<A,B,C,GroupKeyC_> groupKeyCMapping, TriFunction<A,B,C,GroupKeyD_> groupKeyDMapping)Convert theTriConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts.<GroupKeyA_,GroupKeyB_,GroupKeyC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,GroupKeyC_,ResultD_>TriConstraintStream. groupBy(TriFunction<A,B,C,GroupKeyA_> groupKeyAMapping, TriFunction<A,B,C,GroupKeyB_> groupKeyBMapping, TriFunction<A,B,C,GroupKeyC_> groupKeyCMapping, TriConstraintCollector<A,B,C,ResultContainerD_,ResultD_> collectorD)Combines the semantics ofTriConstraintStream.groupBy(TriFunction, TriFunction)andTriConstraintStream.groupBy(TriConstraintCollector).<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>TriConstraintStream. groupBy(TriFunction<A,B,C,GroupKeyA_> groupKeyAMapping, TriFunction<A,B,C,GroupKeyB_> groupKeyBMapping, TriConstraintCollector<A,B,C,ResultContainerC_,ResultC_> collectorC, TriConstraintCollector<A,B,C,ResultContainerD_,ResultD_> collectorD)Combines the semantics ofTriConstraintStream.groupBy(TriFunction, TriFunction)andTriConstraintStream.groupBy(TriConstraintCollector).<ResultContainerA_,ResultA_,ResultContainerB_,ResultB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<ResultA_,ResultB_,ResultC_,ResultD_>TriConstraintStream. groupBy(TriConstraintCollector<A,B,C,ResultContainerA_,ResultA_> collectorA, TriConstraintCollector<A,B,C,ResultContainerB_,ResultB_> collectorB, TriConstraintCollector<A,B,C,ResultContainerC_,ResultC_> collectorC, TriConstraintCollector<A,B,C,ResultContainerD_,ResultD_> collectorD)Convert theTriConstraintStreamto aQuadConstraintStream, containing only a single tuple, the result of applying fourTriConstraintCollectors.default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(UniConstraintStream<D> otherStream)Create a newQuadConstraintStreamfor every combination of [A, B, C] and D.default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(UniConstraintStream<D> otherStream, QuadJoiner<A,B,C,D> joiner)Create a newQuadConstraintStreamfor every combination of [A, B] and C for which theQuadJoineris true (for the properties it extracts from all facts).<D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(UniConstraintStream<D> otherStream, QuadJoiner<A,B,C,D>... joiners)As defined byTriConstraintStream.join(Class, QuadJoiner).default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(UniConstraintStream<D> otherStream, QuadJoiner<A,B,C,D> joiner1, QuadJoiner<A,B,C,D> joiner2)As defined byTriConstraintStream.join(Class, QuadJoiner).default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(UniConstraintStream<D> otherStream, QuadJoiner<A,B,C,D> joiner1, QuadJoiner<A,B,C,D> joiner2, QuadJoiner<A,B,C,D> joiner3)As defined byTriConstraintStream.join(Class, QuadJoiner).default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(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 byTriConstraintStream.join(Class, QuadJoiner).default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(Class<D> otherClass)Create a newQuadConstraintStreamfor every combination of [A, B, C] and D.default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(Class<D> otherClass, QuadJoiner<A,B,C,D> joiner)Create a newQuadConstraintStreamfor every combination of [A, B, C] and D for which theQuadJoineris true (for the properties it extracts from all facts).<D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(Class<D> otherClass, QuadJoiner<A,B,C,D>... joiners)As defined byTriConstraintStream.join(Class, QuadJoiner).default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(Class<D> otherClass, QuadJoiner<A,B,C,D> joiner1, QuadJoiner<A,B,C,D> joiner2)As defined byTriConstraintStream.join(Class, QuadJoiner).default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(Class<D> otherClass, QuadJoiner<A,B,C,D> joiner1, QuadJoiner<A,B,C,D> joiner2, QuadJoiner<A,B,C,D> joiner3)As defined byTriConstraintStream.join(Class, QuadJoiner).default <D> QuadConstraintStream<A,B,C,D>TriConstraintStream. join(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 byTriConstraintStream.join(Class, QuadJoiner). -
Uses of QuadConstraintStream in ai.timefold.solver.core.api.score.stream.uni
Methods in ai.timefold.solver.core.api.score.stream.uni that return QuadConstraintStream Modifier and Type Method Description <ResultContainerA_,ResultA_,ResultContainerB_,ResultB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<ResultA_,ResultB_,ResultC_,ResultD_>UniConstraintStream. groupBy(UniConstraintCollector<A,ResultContainerA_,ResultA_> collectorA, UniConstraintCollector<A,ResultContainerB_,ResultB_> collectorB, UniConstraintCollector<A,ResultContainerC_,ResultC_> collectorC, UniConstraintCollector<A,ResultContainerD_,ResultD_> collectorD)Convert theUniConstraintStreamto aQuadConstraintStream, containing only a single tuple, the result of applying fourUniConstraintCollectors.<GroupKey_,ResultContainerB_,ResultB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKey_,ResultB_,ResultC_,ResultD_>UniConstraintStream. groupBy(Function<A,GroupKey_> groupKeyMapping, UniConstraintCollector<A,ResultContainerB_,ResultB_> collectorB, UniConstraintCollector<A,ResultContainerC_,ResultC_> collectorC, UniConstraintCollector<A,ResultContainerD_,ResultD_> collectorD)Convert theUniConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts.<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>UniConstraintStream. groupBy(Function<A,GroupKeyA_> groupKeyAMapping, Function<A,GroupKeyB_> groupKeyBMapping, UniConstraintCollector<A,ResultContainerC_,ResultC_> collectorC, UniConstraintCollector<A,ResultContainerD_,ResultD_> collectorD)Combines the semantics ofUniConstraintStream.groupBy(Function, Function)andUniConstraintStream.groupBy(UniConstraintCollector).<GroupKeyA_,GroupKeyB_,GroupKeyC_,ResultContainerD_,ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,GroupKeyC_,ResultD_>UniConstraintStream. groupBy(Function<A,GroupKeyA_> groupKeyAMapping, Function<A,GroupKeyB_> groupKeyBMapping, Function<A,GroupKeyC_> groupKeyCMapping, UniConstraintCollector<A,ResultContainerD_,ResultD_> collectorD)Combines the semantics ofUniConstraintStream.groupBy(Function, Function)andUniConstraintStream.groupBy(UniConstraintCollector).<GroupKeyA_,GroupKeyB_,GroupKeyC_,GroupKeyD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_,GroupKeyC_,GroupKeyD_>UniConstraintStream. groupBy(Function<A,GroupKeyA_> groupKeyAMapping, Function<A,GroupKeyB_> groupKeyBMapping, Function<A,GroupKeyC_> groupKeyCMapping, Function<A,GroupKeyD_> groupKeyDMapping)Convert theUniConstraintStreamto aQuadConstraintStream, consisting of unique tuples with four facts.
-