Class Joiners
java.lang.Object
org.optaplanner.core.api.score.stream.Joiners
Creates an
BiJoiner
, TriJoiner
, ... instance
for use in UniConstraintStream.join(Class, BiJoiner)
, ...
Method Summary
Modifier and TypeMethodDescriptionstatic <A> BiJoiner<A,
A> equal()
As defined byequal(Function)
withFunction.identity()
as the argument.static <A,
B, C, Property_>
TriJoiner<A,B, C> equal
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined byequal(Function, Function)
.static <A,
Property_>
BiJoiner<A,A> As defined byequal(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_>
BiJoiner<A,B> Joins every A and B that share a property.static <A,
B, C, D, E, Property_>
PentaJoiner<A,B, C, D, E> equal
(QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined byequal(Function, Function)
static <A,
B, C, D, Property_>
QuadJoiner<A,B, C, D> equal
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined byequal(Function, Function)
.static <A,
B> BiJoiner<A, B> filtering
(BiPredicate<A, B> filter) Applies a filter to the joined tuple, with the semantics ofBiConstraintStream.filter(BiPredicate)
.static <A,
B, C, D, E>
PentaJoiner<A,B, C, D, E> filtering
(PentaPredicate<A, B, C, D, E> filter) As defined byfiltering(BiPredicate)
.static <A,
B, C, D> QuadJoiner<A, B, C, D> filtering
(QuadPredicate<A, B, C, D> filter) As defined byfiltering(BiPredicate)
.static <A,
B, C> TriJoiner<A, B, C> filtering
(TriPredicate<A, B, C> filter) As defined byfiltering(BiPredicate)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> greaterThan
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bygreaterThan(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> greaterThan
(Function<A, Property_> mapping) As defined bygreaterThan(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> greaterThan
(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is greater than the value of a property on B.static <A,
B, C, D, E, Property_ extends Comparable<Property_>>
PentaJoiner<A,B, C, D, E> greaterThan
(QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bygreaterThan(Function, Function)
static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> greaterThan
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bygreaterThan(Function, Function)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> greaterThanOrEqual
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> greaterThanOrEqual
(Function<A, Property_> mapping) As defined bygreaterThanOrEqual(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> greaterThanOrEqual
(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is greater than or equal to the value of a property on B.static <A,
B, C, D, E, Property_ extends Comparable<Property_>>
PentaJoiner<A,B, C, D, E> greaterThanOrEqual
(QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> greaterThanOrEqual
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> lessThan
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bylessThan(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> As defined bylessThan(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> Joins every A and B where a value of property on A is less than the value of a property on B.static <A,
B, C, D, E, Property_ extends Comparable<Property_>>
PentaJoiner<A,B, C, D, E> lessThan
(QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bylessThan(Function, Function)
static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> lessThan
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bylessThan(Function, Function)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> lessThanOrEqual
(BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> lessThanOrEqual
(Function<A, Property_> mapping) As defined bylessThanOrEqual(Function, Function)
with both arguments using the same mapping.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> lessThanOrEqual
(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is less than or equal to the value of a property on B.static <A,
B, C, D, E, Property_ extends Comparable<Property_>>
PentaJoiner<A,B, C, D, E> lessThanOrEqual
(QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> lessThanOrEqual
(TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
.static <A,
B, C, Property_ extends Comparable<Property_>>
TriJoiner<A,B, C> overlapping
(BiFunction<A, B, Property_> leftStartMapping, BiFunction<A, B, Property_> leftEndMapping, Function<C, Property_> rightStartMapping, Function<C, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.static <A,
Property_ extends Comparable<Property_>>
BiJoiner<A,A> overlapping
(Function<A, Property_> startMapping, Function<A, Property_> endMapping) Joins every A and B that overlap for an interval which is specified by a start and end property on both A and B.static <A,
B, Property_ extends Comparable<Property_>>
BiJoiner<A,B> overlapping
(Function<A, Property_> leftStartMapping, Function<A, Property_> leftEndMapping, Function<B, Property_> rightStartMapping, Function<B, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.static <A,
B, C, D, E, Property_ extends Comparable<Property_>>
PentaJoiner<A,B, C, D, E> overlapping
(QuadFunction<A, B, C, D, Property_> leftStartMapping, QuadFunction<A, B, C, D, Property_> leftEndMapping, Function<E, Property_> rightStartMapping, Function<E, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.static <A,
B, C, D, Property_ extends Comparable<Property_>>
QuadJoiner<A,B, C, D> overlapping
(TriFunction<A, B, C, Property_> leftStartMapping, TriFunction<A, B, C, Property_> leftEndMapping, Function<D, Property_> rightStartMapping, Function<D, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
.

Method Details

equal
As defined byequal(Function)
withFunction.identity()
as the argument. Type Parameters:
A
 the type of both objects Returns:
 never null

equal
As defined byequal(Function, Function)
with both arguments using the same mapping. Type Parameters:
A
 the type of both objectsProperty_
 the type of the property to compare Parameters:
mapping
 mapping function to apply to both A and B Returns:
 never null

equal
public static <A,B, BiJoiner<A,Property_> B> equal(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B that share a property. These are exactly the pairs whereleftMapping.apply(A).equals(rightMapping.apply(B))
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Ann, Ann), (Ann, Eric), (Beth, Beth), (Eric, Ann), (Eric, Eric)
. Type Parameters:
B
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to ArightMapping
 mapping function to apply to B Returns:
 never null

lessThan
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> lessThan(Function<A, Property_> mapping) As defined bylessThan(Function, Function)
with both arguments using the same mapping. Type Parameters:
A
 the type of both objectsProperty_
 the type of the property to compare Parameters:
mapping
 mapping function to apply Returns:
 never null

lessThan
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> lessThan(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is less than the value of a property on B. These are exactly the pairs whereleftMapping.apply(A).compareTo(rightMapping.apply(B)) < 0
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Ann, Beth), (Eric, Beth)
. Type Parameters:
A
 the type of object on the leftB
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to ArightMapping
 mapping function to apply to B Returns:
 never null

lessThanOrEqual
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> lessThanOrEqual(Function<A, Property_> mapping) As defined bylessThanOrEqual(Function, Function)
with both arguments using the same mapping. Type Parameters:
A
 the type of both objectsProperty_
 the type of the property to compare Parameters:
mapping
 mapping function to apply Returns:
 never null

lessThanOrEqual
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> lessThanOrEqual(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is less than or equal to the value of a property on B. These are exactly the pairs whereleftMapping.apply(A).compareTo(rightMapping.apply(B)) <= 0
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Ann, Ann), (Ann, Beth), (Ann, Eric), (Beth, Beth), (Eric, Ann), (Eric, Beth), (Eric, Eric)
. Type Parameters:
A
 the type of object on the leftB
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to ArightMapping
 mapping function to apply to B Returns:
 never null

greaterThan
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> greaterThan(Function<A, Property_> mapping) As defined bygreaterThan(Function, Function)
with both arguments using the same mapping. Type Parameters:
A
 the type of both objectsProperty_
 the type of the property to compare Parameters:
mapping
 mapping function to apply Returns:
 never null

greaterThan
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> greaterThan(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is greater than the value of a property on B. These are exactly the pairs whereleftMapping.apply(A).compareTo(rightMapping.apply(B)) > 0
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Beth, Ann), (Beth, Eric)
. Type Parameters:
A
 the type of object on the leftB
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to ArightMapping
 mapping function to apply to B Returns:
 never null

greaterThanOrEqual
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> greaterThanOrEqual(Function<A, Property_> mapping) As defined bygreaterThanOrEqual(Function, Function)
with both arguments using the same mapping. Type Parameters:
A
 the type of both objectsProperty_
 the type of the property to compare Parameters:
mapping
 mapping function to apply Returns:
 never null

greaterThanOrEqual
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> greaterThanOrEqual(Function<A, Property_> leftMapping, Function<B, Property_> rightMapping) Joins every A and B where a value of property on A is greater than or equal to the value of a property on B. These are exactly the pairs whereleftMapping.apply(A).compareTo(rightMapping.apply(B)) >= 0
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with both leftMapping and rightMapping beingPerson::getAge
, this joiner will produce pairs(Ann, Ann), (Ann, Eric), (Beth, Ann), (Beth, Beth), (Beth, Eric), (Eric, Ann), (Eric, Eric)
. Type Parameters:
A
 the type of object on the leftB
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to ArightMapping
 mapping function to apply to B Returns:
 never null

filtering
Applies a filter to the joined tuple, with the semantics ofBiConstraintStream.filter(BiPredicate)
. For example, on a cartesian product of list[Ann(age = 20), Beth(age = 25), Eric(age = 20)]
with filter beingage == 20
, this joiner will produce pairs(Ann, Ann), (Ann, Eric), (Eric, Ann), (Eric, Eric)
. Type Parameters:
A
 type of the first fact in the tupleB
 type of the second fact in the tuple Parameters:
filter
 never null, filter to apply Returns:
 never null

overlapping
public static <A,Property_ extends Comparable<Property_>> BiJoiner<A,A> overlapping(Function<A, Property_> startMapping, Function<A, Property_> endMapping) Joins every A and B that overlap for an interval which is specified by a start and end property on both A and B. These are exactly the pairs whereA.start < B.end
andA.end > B.start
. For example, on a cartesian product of list[Ann(start=08:00, end=14:00), Beth(start=12:00, end=18:00), Eric(start=16:00, end=22:00)]
with startMapping beingPerson::getStart
and endMapping beingPerson::getEnd
, this joiner will produce pairs(Ann, Ann), (Ann, Beth), (Beth, Ann), (Beth, Beth), (Beth, Eric), (Eric, Beth), (Eric, Eric)
. Type Parameters:
A
 the type of both the first and second argumentProperty_
 the type used to define the interval, comparable Parameters:
startMapping
 maps the argument to the start point of its interval (inclusive)endMapping
 maps the argument to the end point of its interval (exclusive) Returns:
 never null

overlapping
public static <A,B, BiJoiner<A,Property_ extends Comparable<Property_>> B> overlapping(Function<A, Property_> leftStartMapping, Function<A, Property_> leftEndMapping, Function<B, Property_> rightStartMapping, Function<B, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
. Type Parameters:
A
 the type of the first argumentB
 the type of the second argumentProperty_
 the type used to define the interval, comparable Parameters:
leftStartMapping
 maps the first argument to its interval start point (inclusive)leftEndMapping
 maps the first argument to its interval end point (exclusive)rightStartMapping
 maps the second argument to its interval start point (inclusive)rightEndMapping
 maps the second argument to its interval end point (exclusive) Returns:
 never null

equal
public static <A,B, TriJoiner<A,C, Property_> B, equalC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined byequal(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B)rightMapping
 mapping function to apply to C Returns:
 never null

lessThan
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, lessThanC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bylessThan(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B)rightMapping
 mapping function to apply to C Returns:
 never null

lessThanOrEqual
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, lessThanOrEqualC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B)rightMapping
 mapping function to apply to C Returns:
 never null

greaterThan
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, greaterThanC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bygreaterThan(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B)rightMapping
 mapping function to apply to C Returns:
 never null

greaterThanOrEqual
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, greaterThanOrEqualC> (BiFunction<A, B, Property_> leftMapping, Function<C, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B)rightMapping
 mapping function to apply to C Returns:
 never null

filtering
As defined byfiltering(BiPredicate)
. Type Parameters:
A
 type of the first fact in the tupleB
 type of the second fact in the tupleC
 type of the third fact in the tuple Parameters:
filter
 never null, filter to apply Returns:
 never null

overlapping
public static <A,B, TriJoiner<A,C, Property_ extends Comparable<Property_>> B, overlappingC> (BiFunction<A, B, Property_> leftStartMapping, BiFunction<A, B, Property_> leftEndMapping, Function<C, Property_> rightStartMapping, Function<C, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
. Type Parameters:
A
 the type of the first argumentB
 the type of the second argumentC
 the type of the third argumentProperty_
 the type used to define the interval, comparable Parameters:
leftStartMapping
 maps the first and second arguments to their interval start point (inclusive)leftEndMapping
 maps the first and second arguments to their interval end point (exclusive)rightStartMapping
 maps the third argument to its interval start point (inclusive)rightEndMapping
 maps the third argument to its interval end point (exclusive) Returns:
 never null

equal
public static <A,B, QuadJoiner<A,C, D, Property_> B, equalC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined byequal(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of the object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A, B, C)rightMapping
 mapping function to apply to D Returns:
 never null

lessThan
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, lessThanC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bylessThan(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B,C)rightMapping
 mapping function to apply to D Returns:
 never null

lessThanOrEqual
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, lessThanOrEqualC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B,C)rightMapping
 mapping function to apply to D Returns:
 never null

greaterThan
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, greaterThanC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bygreaterThan(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B,C)rightMapping
 mapping function to apply to D Returns:
 never null

greaterThanOrEqual
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, greaterThanOrEqualC, D> (TriFunction<A, B, C, Property_> leftMapping, Function<D, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B,C)rightMapping
 mapping function to apply to D Returns:
 never null

filtering
As defined byfiltering(BiPredicate)
. Type Parameters:
A
 type of the first fact in the tupleB
 type of the second fact in the tupleC
 type of the third fact in the tupleD
 type of the fourth fact in the tuple Parameters:
filter
 never null, filter to apply Returns:
 never null

overlapping
public static <A,B, QuadJoiner<A,C, D, Property_ extends Comparable<Property_>> B, overlappingC, D> (TriFunction<A, B, C, Property_> leftStartMapping, TriFunction<A, B, C, Property_> leftEndMapping, Function<D, Property_> rightStartMapping, Function<D, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
. Type Parameters:
A
 the type of the first argumentB
 the type of the second argumentC
 the type of the third argumentD
 the type of the fourth argumentProperty_
 the type used to define the interval, comparable Parameters:
leftStartMapping
 maps the first, second and third arguments to their interval start point (inclusive)leftEndMapping
 maps the first, second and third arguments to their interval end point (exclusive)rightStartMapping
 maps the fourth argument to its interval start point (inclusive)rightEndMapping
 maps the fourth argument to its interval end point (exclusive) Returns:
 never null

equal
public static <A,B, PentaJoiner<A,C, D, E, Property_> B, equalC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined byequal(Function, Function)
 Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of the fourth object on the leftE
 the type of the object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B,C,D)rightMapping
 mapping function to apply to E Returns:
 never null

lessThan
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, lessThanC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bylessThan(Function, Function)
 Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of the fourth object on the leftE
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B,C,D)rightMapping
 mapping function to apply to E Returns:
 never null

lessThanOrEqual
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, lessThanOrEqualC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bylessThanOrEqual(Function, Function)
 Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of the fourth object on the leftE
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B,C,D)rightMapping
 mapping function to apply to E Returns:
 never null

greaterThan
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, greaterThanC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bygreaterThan(Function, Function)
 Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of the fourth object on the leftE
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B,C,D)rightMapping
 mapping function to apply to E Returns:
 never null

greaterThanOrEqual
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, greaterThanOrEqualC, D, E> (QuadFunction<A, B, C, D, Property_> leftMapping, Function<E, Property_> rightMapping) As defined bygreaterThanOrEqual(Function, Function)
 Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of the fourth object on the leftE
 the type of object on the rightProperty_
 the type of the property to compare Parameters:
leftMapping
 mapping function to apply to (A,B,C,D)rightMapping
 mapping function to apply to E Returns:
 never null

filtering
As defined byfiltering(BiPredicate)
. Type Parameters:
A
 the type of the first object on the leftB
 the type of the second object on the leftC
 the type of the third object on the leftD
 the type of the fourth object on the leftE
 the type of object on the right Parameters:
filter
 never null, filter to apply Returns:
 never null

overlapping
public static <A,B, PentaJoiner<A,C, D, E, Property_ extends Comparable<Property_>> B, overlappingC, D, E> (QuadFunction<A, B, C, D, Property_> leftStartMapping, QuadFunction<A, B, C, D, Property_> leftEndMapping, Function<E, Property_> rightStartMapping, Function<E, Property_> rightEndMapping) As defined byoverlapping(Function, Function)
. Type Parameters:
A
 the type of the first argumentB
 the type of the second argumentC
 the type of the third argumentD
 the type of the fourth argumentE
 the type of the fifth argumentProperty_
 the type used to define the interval, comparable Parameters:
leftStartMapping
 maps the first, second, third and fourth arguments to their interval start point (inclusive)leftEndMapping
 maps the first, second, third and fourth arguments to their interval end point (exclusive)rightStartMapping
 maps the fifth argument to its interval start point (inclusive)rightEndMapping
 maps the fifth argument to its interval end point (exclusive) Returns:
 never null
