Uses of Interface
org.optaplanner.core.api.score.stream.quad.QuadConstraintStream
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.-
Uses of QuadConstraintStream in org.optaplanner.core.api.score.stream.bi
Modifier and TypeMethodDescription<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 theBiConstraintStream
to aQuadConstraintStream
, consisting of unique tuples with four facts.<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 theBiConstraintStream
to aQuadConstraintStream
, consisting of unique tuples with four facts.<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_, 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)
.<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 theBiConstraintStream
to aQuadConstraintStream
, containing only a single tuple, the result of applying fourBiConstraintCollector
s. -
Uses of QuadConstraintStream in org.optaplanner.core.api.score.stream.quad
Modifier and TypeMethodDescriptionQuadConstraintStream.distinct()
Transforms the stream in such a way that all the tuples going through it are distinct.Exhaustively test each tuple of facts against theQuadPredicate
and 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 theQuadConstraintStream
to 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 theTriConstraintStream
to 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 theQuadConstraintStream
to aQuadConstraintStream
, containing only a single tuple, the result of applying fourQuadConstraintCollector
s.default <E> QuadConstraintStream<A,
B, C, D> Create a newBiConstraintStream
for every tuple of A, B, C and D where E exists for which thePentaJoiner
is true (for the properties it extracts from the facts).<E> QuadConstraintStream<A,
B, C, D> 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 newBiConstraintStream
for every tuple of A, B, C and D where E exists for which thePentaJoiner
is 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 newBiConstraintStream
for every tuple of A, B, C and D where E does not exist for which thePentaJoiner
is 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 newBiConstraintStream
for every tuple of A, B, C and D where E does not exist for which thePentaJoiner
is 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 org.optaplanner.core.api.score.stream.tri
Modifier and TypeMethodDescription<GroupKey_,
ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKey_,ResultB_, ResultC_, ResultD_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKey_> groupKeyMapping, TriConstraintCollector<A, B, C, ResultContainerB_, ResultB_> collectorB, TriConstraintCollector<A, B, C, ResultContainerC_, ResultC_> collectorC, TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) Convert theTriConstraintStream
to aQuadConstraintStream
, consisting of unique tuples with four facts.<GroupKeyA_,
GroupKeyB_, GroupKeyC_, GroupKeyD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping, TriFunction<A, B, C, GroupKeyD_> groupKeyDMapping) Convert theTriConstraintStream
to aQuadConstraintStream
, consisting of unique tuples with four facts.<GroupKeyA_,
GroupKeyB_, GroupKeyC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultD_> TriConstraintStream.groupBy
(TriFunction<A, B, C, GroupKeyA_> groupKeyAMapping, TriFunction<A, B, C, GroupKeyB_> groupKeyBMapping, TriFunction<A, B, C, GroupKeyC_> groupKeyCMapping, TriConstraintCollector<A, B, C, ResultContainerD_, ResultD_> collectorD) Combines the semantics ofTriConstraintStream.groupBy(TriFunction, TriFunction)
andTriConstraintStream.groupBy(TriConstraintCollector)
.<GroupKeyA_,
GroupKeyB_, 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 theTriConstraintStream
to aQuadConstraintStream
, containing only a single tuple, the result of applying fourTriConstraintCollector
s.default <D> QuadConstraintStream<A,
B, C, D> Create a newQuadConstraintStream
for every combination of [A, B, C] and D.default <D> QuadConstraintStream<A,
B, C, D> Create a newQuadConstraintStream
for every combination of [A, B, C] and D for which theQuadJoiner
is true (for the properties it extracts from all facts).<D> QuadConstraintStream<A,
B, C, D> 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)
.default <D> QuadConstraintStream<A,
B, C, D> TriConstraintStream.join
(UniConstraintStream<D> otherStream) Create a newQuadConstraintStream
for 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 newQuadConstraintStream
for every combination of [A, B] and C for which theQuadJoiner
is 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)
. -
Uses of QuadConstraintStream in org.optaplanner.core.api.score.stream.uni
Modifier and TypeMethodDescription<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 theUniConstraintStream
to aQuadConstraintStream
, consisting of unique tuples with four facts.<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 theUniConstraintStream
to aQuadConstraintStream
, consisting of unique tuples with four facts.<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_, 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)
.<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 theUniConstraintStream
to aQuadConstraintStream
, containing only a single tuple, the result of applying fourUniConstraintCollector
s.